[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-block] [Qemu-devel] [PATCH v6 01/13] block: Add op blocker typ
From: |
Fam Zheng |
Subject: |
Re: [Qemu-block] [Qemu-devel] [PATCH v6 01/13] block: Add op blocker type "device IO" |
Date: |
Thu, 28 May 2015 19:11:24 +0800 |
User-agent: |
Mutt/1.5.23 (2014-03-12) |
On Thu, 05/28 12:52, Paolo Bonzini wrote:
>
>
> On 28/05/2015 12:46, Fam Zheng wrote:
> >> >
> >> > Mirror needs to pause/resume the source. It doesn't need to handle
> >> > pause/resume of the target, does it?
> >> >
> >>> > > So, in order for the solution to be general, and complete, this
> >>> > > nofitier list
> >>> > > approach relies on the listening devices to do the right thing, which
> >>> > > requires
> >>> > > modifying all of them, and is harder to maintain.
> >> >
> >> > Isn't it only devices that use aio_set_event_notifier for their
> >> > ioeventfd?
> > I think it's only the case for qmp_transaction, mirror job needs all block
> > devices to implement pause: mirror_run guarantees source and target in sync
> > when it returns; but bdrv_swap is deferred to a main loop bottom half -
> > what
> > if there is a guest write to source in between?
>
> Whoever uses ioeventfd needs to implement pause/resume, yes---not just
> dataplane, also "regular" virtio-blk/virtio-scsi.
>
> However, everyone else should be okay, because the bottom half runs
> immediately and the big QEMU lock is not released in the meanwhile. So
> the CPUs have no occasion to run. This needs a comment!
>
I'm not sure. It seems timer callbacks also do I/O, for example
nvme_process_sq().
Fam
- Re: [Qemu-block] [PATCH v6 01/13] block: Add op blocker type "device IO", (continued)
- Re: [Qemu-block] [PATCH v6 01/13] block: Add op blocker type "device IO", Kevin Wolf, 2015/05/26
- Re: [Qemu-block] [PATCH v6 01/13] block: Add op blocker type "device IO", Max Reitz, 2015/05/26
- Re: [Qemu-block] [PATCH v6 01/13] block: Add op blocker type "device IO", Kevin Wolf, 2015/05/27
- Re: [Qemu-block] [PATCH v6 01/13] block: Add op blocker type "device IO", Paolo Bonzini, 2015/05/27
- Re: [Qemu-block] [PATCH v6 01/13] block: Add op blocker type "device IO", Kevin Wolf, 2015/05/27
- Re: [Qemu-block] [PATCH v6 01/13] block: Add op blocker type "device IO", Paolo Bonzini, 2015/05/27
- Re: [Qemu-block] [Qemu-devel] [PATCH v6 01/13] block: Add op blocker type "device IO", Fam Zheng, 2015/05/27
- Re: [Qemu-block] [Qemu-devel] [PATCH v6 01/13] block: Add op blocker type "device IO", Paolo Bonzini, 2015/05/28
- Re: [Qemu-block] [Qemu-devel] [PATCH v6 01/13] block: Add op blocker type "device IO", Fam Zheng, 2015/05/28
- Re: [Qemu-block] [Qemu-devel] [PATCH v6 01/13] block: Add op blocker type "device IO", Paolo Bonzini, 2015/05/28
- Re: [Qemu-block] [Qemu-devel] [PATCH v6 01/13] block: Add op blocker type "device IO",
Fam Zheng <=
- Re: [Qemu-block] [Qemu-devel] [PATCH v6 01/13] block: Add op blocker type "device IO", Paolo Bonzini, 2015/05/28
- Re: [Qemu-block] [Qemu-devel] [PATCH v6 01/13] block: Add op blocker type "device IO", Fam Zheng, 2015/05/28
- Re: [Qemu-block] [Qemu-devel] [PATCH v6 01/13] block: Add op blocker type "device IO", Andrey Korolyov, 2015/05/29
- Re: [Qemu-block] [Qemu-devel] [PATCH v6 01/13] block: Add op blocker type "device IO", Paolo Bonzini, 2015/05/30
- Re: [Qemu-block] [Qemu-devel] [PATCH v6 01/13] block: Add op blocker type "device IO", Kevin Wolf, 2015/05/28
- Re: [Qemu-block] [Qemu-devel] [PATCH v6 01/13] block: Add op blocker type "device IO", Fam Zheng, 2015/05/28
- Re: [Qemu-block] [Qemu-devel] [PATCH v6 01/13] block: Add op blocker type "device IO", Paolo Bonzini, 2015/05/28
- Re: [Qemu-block] [Qemu-devel] [PATCH v6 01/13] block: Add op blocker type "device IO", Kevin Wolf, 2015/05/28
- Re: [Qemu-block] [Qemu-devel] [PATCH v6 01/13] block: Add op blocker type "device IO", Paolo Bonzini, 2015/05/28
- Re: [Qemu-block] [Qemu-devel] [PATCH v6 01/13] block: Add op blocker type "device IO", Fam Zheng, 2015/05/28