qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: Paolo Bonzini <pbonzini@redhat.com>
To: Stefan Priebe - Profihost AG <s.priebe@profihost.ag>
Cc: qemu-devel@nongnu.org, ronniesahlberg@gmail.com
Subject: Re: [Qemu-devel] [PATCH RFT 0/3] iscsi: fix NULL dereferences / races between task completion and abort
Date: Mon, 20 Aug 2012 10:08:00 +0200	[thread overview]
Message-ID: <5031F060.1030602@redhat.com> (raw)
In-Reply-To: <5031E86F.2000000@profihost.ag>

Il 20/08/2012 09:34, Stefan Priebe - Profihost AG ha scritto:
>>> Booting works fine now. But the VM starts to hang after trying to unmap
>>> large regions. No segfault or so just not reacting anymore.
>>
>> This is expected; unfortunately cancellation right now is a synchronous
>> operation in the block layer.  SCSI is the first big user of
>> cancellation, and it would indeed benefit from asynchronous cancellation.
>>
>> Without these three patches, you risk corruption in case the following
>> happens:
>>
>>      qemu                 target
>>    -----------------------------------
>>      send unmap -------->
>>      cancel unmap ------>
>>      send write -------->
>>         <---------------- complete write
>>                           <unmap just written sector>
>>         <---------------- complete unmap
>>         <---------------- cancellation done (unmap complete)
> 
> mhm OK that makes sense. But i cannot even login via SSH

That's because the "big QEMU lock" is held by the thread that called
qemu_aio_cancel.

> and i also see
> no cancellation message in kernel log.

And that's because the UNMAP actually ultimately succeeds.  You'll
probably see soft lockup messages though.

The solution here is to bump the timeout of the UNMAP command (either in
the kernel or in libiscsi, I didn't really understand who's at fault).

Paolo

  reply	other threads:[~2012-08-20  8:08 UTC|newest]

Thread overview: 42+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-08-18 21:49 [Qemu-devel] [PATCH RFT 0/3] iscsi: fix NULL dereferences / races between task completion and abort Paolo Bonzini
2012-08-18 21:49 ` [Qemu-devel] [PATCH 1/3] iscsi: move iscsi_schedule_bh and iscsi_readv_writev_bh_cb Paolo Bonzini
2012-08-18 21:49 ` [Qemu-devel] [PATCH 2/3] iscsi: simplify iscsi_schedule_bh Paolo Bonzini
2012-08-18 21:49 ` [Qemu-devel] [PATCH 3/3] iscsi: fix races between task completion and abort Paolo Bonzini
2012-08-19  7:55 ` [Qemu-devel] [PATCH RFT 0/3] iscsi: fix NULL dereferences / " Stefan Priebe
2012-08-19 13:11   ` Paolo Bonzini
2012-08-19 19:22     ` Stefan Priebe - Profihost AG
2012-08-20  7:22       ` Paolo Bonzini
2012-08-20  7:34         ` Stefan Priebe - Profihost AG
2012-08-20  8:08           ` Paolo Bonzini [this message]
2012-08-20  8:12             ` Stefan Priebe - Profihost AG
2012-08-20 22:36               ` ronnie sahlberg
2012-08-21  7:22                 ` Stefan Priebe - Profihost AG
2012-08-21  7:30                   ` Paolo Bonzini
2012-11-06  8:41                     ` [Qemu-devel] scsi-hd with discard_granularity and unmap results in Aborted Commands Stefan Priebe - Profihost AG
2012-11-06 22:42                       ` Paolo Bonzini
2012-11-07 18:57                         ` Stefan Priebe
2012-11-18 22:00                         ` Stefan Priebe
2012-11-19  8:10                           ` Paolo Bonzini
2012-11-19  9:36                             ` Stefan Priebe - Profihost AG
2012-11-19  9:54                               ` Paolo Bonzini
2012-11-19  9:59                                 ` Stefan Priebe - Profihost AG
2012-11-19 10:06                                   ` Paolo Bonzini
2012-11-19 10:13                                     ` Stefan Priebe - Profihost AG
2012-11-19 10:23                                       ` Paolo Bonzini
2012-11-19 10:30                                         ` Stefan Priebe - Profihost AG
2012-11-19 10:36                                           ` Paolo Bonzini
2012-11-19 10:57                                             ` Stefan Priebe - Profihost AG
2012-11-19 11:16                                               ` Paolo Bonzini
2012-11-19 11:49                                                 ` Stefan Priebe - Profihost AG
2012-11-19 12:24                                                   ` Paolo Bonzini
2012-11-19 13:01                                                     ` Stefan Priebe - Profihost AG
2012-11-19 13:06                                                       ` Paolo Bonzini
2012-11-19 14:16                                                         ` Stefan Priebe - Profihost AG
2012-11-19 14:32                                                           ` Paolo Bonzini
2012-11-19 14:28                                                         ` Stefan Priebe - Profihost AG
2012-11-19 14:41                                                           ` Paolo Bonzini
2012-11-19 14:48                                                             ` Stefan Priebe - Profihost AG
2012-11-19 15:03                                                               ` Paolo Bonzini
2012-11-19 15:04                                                             ` Stefan Priebe - Profihost AG
2012-11-19 15:22                                                               ` Paolo Bonzini
2012-11-19 15:58                                                                 ` Stefan Priebe - Profihost AG

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=5031F060.1030602@redhat.com \
    --to=pbonzini@redhat.com \
    --cc=qemu-devel@nongnu.org \
    --cc=ronniesahlberg@gmail.com \
    --cc=s.priebe@profihost.ag \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).