Re: [Qemu-devel] [PATCH v11 01/19] block: Add bdrv_drain_all_{begin, end}()

2016-10-25 Thread Paolo Bonzini
On 25/10/2016 16:48, Alberto Garcia wrote: > And how about the rest of the things that are going on in > bdrv_drain_all_begin()? > > bdrv_parent_drained_begin(bs); No BlockBackend yet, and BlockDriverStates have been quiesced already, so that's okay. > bdrv_io_unplugged_begin(b

Re: [Qemu-devel] [PATCH v11 01/19] block: Add bdrv_drain_all_{begin, end}()

2016-10-25 Thread Kevin Wolf
Am 25.10.2016 um 16:41 hat Paolo Bonzini geschrieben: > > > On 25/10/2016 16:38, Kevin Wolf wrote: > > Am 25.10.2016 um 15:53 hat Paolo Bonzini geschrieben: > >> > >> > >> On 25/10/2016 15:39, Alberto Garcia wrote: > >>> On Mon 24 Oct 2016 12:53:41 PM CEST, Paolo Bonzini wrote: > >>> > > My f

Re: [Qemu-devel] [PATCH v11 01/19] block: Add bdrv_drain_all_{begin, end}()

2016-10-25 Thread Alberto Garcia
On Tue 25 Oct 2016 04:38:27 PM CEST, Kevin Wolf wrote: >> >>> My first thoughts were about how to let an unpause succeed without a >> >>> previous pause for these objects, but actually I think this isn't >> >>> what we should do. We rather want to actually do the pause instead >> >>> because even

Re: [Qemu-devel] [PATCH v11 01/19] block: Add bdrv_drain_all_{begin, end}()

2016-10-25 Thread Kevin Wolf
Am 25.10.2016 um 15:53 hat Paolo Bonzini geschrieben: > > > On 25/10/2016 15:39, Alberto Garcia wrote: > > On Mon 24 Oct 2016 12:53:41 PM CEST, Paolo Bonzini wrote: > > > >>> My first thoughts were about how to let an unpause succeed without a > >>> previous pause for these objects, but actually

Re: [Qemu-devel] [PATCH v11 01/19] block: Add bdrv_drain_all_{begin, end}()

2016-10-25 Thread Paolo Bonzini
On 25/10/2016 16:38, Kevin Wolf wrote: > Am 25.10.2016 um 15:53 hat Paolo Bonzini geschrieben: >> >> >> On 25/10/2016 15:39, Alberto Garcia wrote: >>> On Mon 24 Oct 2016 12:53:41 PM CEST, Paolo Bonzini wrote: >>> > My first thoughts were about how to let an unpause succeed without a > pre

Re: [Qemu-devel] [PATCH v11 01/19] block: Add bdrv_drain_all_{begin, end}()

2016-10-25 Thread Paolo Bonzini
On 25/10/2016 15:39, Alberto Garcia wrote: > On Mon 24 Oct 2016 12:53:41 PM CEST, Paolo Bonzini wrote: > >>> My first thoughts were about how to let an unpause succeed without a >>> previous pause for these objects, but actually I think this isn't >>> what we should do. We rather want to actuall

Re: [Qemu-devel] [PATCH v11 01/19] block: Add bdrv_drain_all_{begin, end}()

2016-10-25 Thread Alberto Garcia
On Mon 24 Oct 2016 12:53:41 PM CEST, Paolo Bonzini wrote: >> My first thoughts were about how to let an unpause succeed without a >> previous pause for these objects, but actually I think this isn't >> what we should do. We rather want to actually do the pause instead >> because even new BDSes and

Re: [Qemu-devel] [PATCH v11 01/19] block: Add bdrv_drain_all_{begin, end}()

2016-10-24 Thread Paolo Bonzini
On 19/10/2016 19:11, Kevin Wolf wrote: > Am 14.10.2016 um 15:08 hat Alberto Garcia geschrieben: >> bdrv_drain_all() doesn't allow the caller to do anything after all >> pending requests have been completed but before block jobs are >> resumed. >> >> This patch splits bdrv_drain_all() into _begin(

Re: [Qemu-devel] [PATCH v11 01/19] block: Add bdrv_drain_all_{begin, end}()

2016-10-21 Thread John Snow
On 10/21/2016 03:03 PM, Alberto Garcia wrote: On Fri 21 Oct 2016 08:55:51 PM CEST, John Snow wrote: bdrv_drain_all() doesn't allow the caller to do anything after all pending requests have been completed but before block jobs are resumed. This patch splits bdrv_drain_all() into _begin() and

Re: [Qemu-devel] [PATCH v11 01/19] block: Add bdrv_drain_all_{begin, end}()

2016-10-21 Thread Alberto Garcia
On Fri 21 Oct 2016 08:55:51 PM CEST, John Snow wrote: bdrv_drain_all() doesn't allow the caller to do anything after all pending requests have been completed but before block jobs are resumed. This patch splits bdrv_drain_all() into _begin() and _end() for that purpo

Re: [Qemu-devel] [PATCH v11 01/19] block: Add bdrv_drain_all_{begin, end}()

2016-10-21 Thread John Snow
On 10/20/2016 04:25 AM, Alberto Garcia wrote: On Wed 19 Oct 2016 07:11:20 PM CEST, Kevin Wolf wrote: bdrv_drain_all() doesn't allow the caller to do anything after all pending requests have been completed but before block jobs are resumed. This patch splits bdrv_drain_all() into _begin() and

Re: [Qemu-devel] [PATCH v11 01/19] block: Add bdrv_drain_all_{begin, end}()

2016-10-20 Thread Kevin Wolf
Am 20.10.2016 um 10:25 hat Alberto Garcia geschrieben: > On Wed 19 Oct 2016 07:11:20 PM CEST, Kevin Wolf wrote: > >> bdrv_drain_all() doesn't allow the caller to do anything after all > >> pending requests have been completed but before block jobs are > >> resumed. > >> > >> This patch splits bdrv

Re: [Qemu-devel] [PATCH v11 01/19] block: Add bdrv_drain_all_{begin, end}()

2016-10-20 Thread Alberto Garcia
On Wed 19 Oct 2016 07:11:20 PM CEST, Kevin Wolf wrote: >> bdrv_drain_all() doesn't allow the caller to do anything after all >> pending requests have been completed but before block jobs are >> resumed. >> >> This patch splits bdrv_drain_all() into _begin() and _end() for that >> purpose. It also

Re: [Qemu-devel] [PATCH v11 01/19] block: Add bdrv_drain_all_{begin, end}()

2016-10-19 Thread Kevin Wolf
Am 14.10.2016 um 15:08 hat Alberto Garcia geschrieben: > bdrv_drain_all() doesn't allow the caller to do anything after all > pending requests have been completed but before block jobs are > resumed. > > This patch splits bdrv_drain_all() into _begin() and _end() for that > purpose. It also adds a

Re: [Qemu-devel] [PATCH v11 01/19] block: Add bdrv_drain_all_{begin, end}()

2016-10-15 Thread Paolo Bonzini
On 14/10/2016 15:08, Alberto Garcia wrote: > bdrv_drain_all() doesn't allow the caller to do anything after all > pending requests have been completed but before block jobs are > resumed. > > This patch splits bdrv_drain_all() into _begin() and _end() for that > purpose. It also adds aio_{disabl

[Qemu-devel] [PATCH v11 01/19] block: Add bdrv_drain_all_{begin, end}()

2016-10-14 Thread Alberto Garcia
bdrv_drain_all() doesn't allow the caller to do anything after all pending requests have been completed but before block jobs are resumed. This patch splits bdrv_drain_all() into _begin() and _end() for that purpose. It also adds aio_{disable,enable}_external() calls to disable external clients in