From: Alexey Kardashevskiy <aik@ozlabs.ru>
To: Paolo Bonzini <pbonzini@redhat.com>
Cc: quintela@redhat.com, agraf@suse.de, qemu-devel@nongnu.org,
qemu-ppc@nongnu.org, David Gibson <david@gibson.dropbear.id.au>
Subject: Re: [Qemu-devel] [PATCH 7/8] pseries: savevm support for PAPR virtual SCSI
Date: Fri, 31 May 2013 15:58:48 +1000 [thread overview]
Message-ID: <51A83C18.2030102@ozlabs.ru> (raw)
In-Reply-To: <51A30528.9020708@redhat.com>
On 05/27/2013 05:03 PM, Paolo Bonzini wrote:
> Il 27/05/2013 08:48, Alexey Kardashevskiy ha scritto:
>>>>
>>>> This is only true when the rerror and werror options have the values
>>>> "ignore" or "report". See virtio-scsi for an example of how to save the
>>>> requests using the save_request and load_request callbacks in SCSIBusInfo.
>>
>> Sigh.
>
> ?
I thought the series is ready to go but I was wrong. Furthermore when I got
to the point where I could actually test the save/restore for vscsi_req,
migration was totally broken on PPC and it took some time to fix it :-/
>> How do you test that requests are saved/restored correctly? What does
>> happen to requests which were already sent to the real hardware (real block
>> device, etc) but have not completed at the moment of the end of migration?
>
> They aren't saved, there is a bdrv_drain_all() in the migration code.
>
> This is only used for rerror=stop or werror=stop. To test it you can
> use blkdebug (also a bit underdocumented) or hack block/raw-posix.c with
> code that makes it fail the 100th write or something like that. Start
> the VM and migrate it while paused to a QEMU that doesn't have the hack.
I run QEMU as (this is the destination, the source just does not have
-incoming):
./qemu-system-ppc64 \
-L "qemu-ppc64-bios/" \
-device "spapr-vscsi,id=ibmvscsi0" \
-drive
"file=virtimg/fc18guest,if=none,id=dddrive0,readonly=off,format=blkdebug,media=disk,werror=stop,rerror=stop"
\
-device
"scsi-disk,id=scsidisk0,bus=ibmvscsi0.0,channel=0,scsi-id=0,lun=0,drive=dddrive0,removable=off"
\
-incoming "tcp:localhost:4000" \
-m "1024" \
-machine "pseries" \
-nographic \
-vga "none" \
-enable-kvm
Am I using werror/rerror correctly?
I did not really understand how to use blkdebug or what else to hack in
raw-posix but the point is I cannot get QEMU into a state with at least one
vcsci_req.active==1, they are always inactive no matter what I do - I run
10 instances of "dd if=/def/sda of=/dev/null bs=4K" (on 8GB image with
FC18) and increase migration speed to 500MB/s, no effect.
How do you trigger the situation when there are inactive requests which
have to be migrated?
And another question (sorry I am not very familiar with terminology but
cc:Ben is :) ) - what happens with indirect requests if migration happened
in the middle of handling such a request? virtio-scsi does not seem to
handle this situation anyhow, it just reconstructs the whole request and
that's it.
--
Alexey
next prev parent reply other threads:[~2013-05-31 5:58 UTC|newest]
Thread overview: 31+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-05-03 1:38 [Qemu-devel] [0/8] pseries: savevm / migration support David Gibson
2013-05-03 1:38 ` [Qemu-devel] [PATCH 1/8] savevm: Implement VMS_DIVIDE flag David Gibson
2013-05-03 1:38 ` [Qemu-devel] [PATCH 2/8] target-ppc: Convert ppc cpu savevm to VMStateDescription David Gibson
2013-05-03 11:29 ` Andreas Färber
2013-05-03 14:26 ` [Qemu-devel] [Qemu-ppc] " David Gibson
2013-05-03 1:38 ` [Qemu-devel] [PATCH 3/8] pseries: savevm support for XICS interrupt controller David Gibson
2013-05-03 1:38 ` [Qemu-devel] [PATCH 4/8] pseries: savevm support for VIO devices David Gibson
2013-05-03 1:38 ` [Qemu-devel] [PATCH 5/8] pseries: savevm support for PAPR VIO logical lan David Gibson
2013-05-03 1:38 ` [Qemu-devel] [PATCH 6/8] pseries: savevm support for PAPR TCE tables David Gibson
2013-05-03 1:38 ` [Qemu-devel] [PATCH 7/8] pseries: savevm support for PAPR virtual SCSI David Gibson
2013-05-06 7:37 ` Paolo Bonzini
2013-05-07 3:07 ` [Qemu-devel] [Qemu-ppc] " David Gibson
2013-05-27 6:48 ` [Qemu-devel] " Alexey Kardashevskiy
2013-05-27 7:03 ` Paolo Bonzini
2013-05-31 5:58 ` Alexey Kardashevskiy [this message]
2013-05-31 8:18 ` Paolo Bonzini
2013-05-31 10:12 ` Alexey Kardashevskiy
2013-05-31 10:26 ` Paolo Bonzini
2013-05-31 10:33 ` Alexey Kardashevskiy
2013-05-31 10:34 ` Paolo Bonzini
2013-05-31 10:07 ` Benjamin Herrenschmidt
2013-05-31 10:25 ` Alexey Kardashevskiy
2013-05-31 10:41 ` Paolo Bonzini
2013-06-01 0:01 ` Benjamin Herrenschmidt
2013-06-03 6:21 ` Paolo Bonzini
2013-06-03 5:46 ` Alexey Kardashevskiy
2013-06-03 6:23 ` Paolo Bonzini
2013-06-03 8:07 ` Benjamin Herrenschmidt
2013-06-03 9:37 ` Alexey Kardashevskiy
2013-06-03 9:41 ` Paolo Bonzini
2013-05-03 1:38 ` [Qemu-devel] [PATCH 8/8] pseries: savevm support for pseries machine David Gibson
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=51A83C18.2030102@ozlabs.ru \
--to=aik@ozlabs.ru \
--cc=agraf@suse.de \
--cc=david@gibson.dropbear.id.au \
--cc=pbonzini@redhat.com \
--cc=qemu-devel@nongnu.org \
--cc=qemu-ppc@nongnu.org \
--cc=quintela@redhat.com \
/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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.