[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]

Re: [libvirt] [PATCH 0/5] Use synchronous block job events in qemu_migration



On 16.04.2015 11:24, Michael Chapman wrote:
> This patch series converts qemu_migration to use the synchronous block job
> event code introduced in commit 630ee5ac.
> 
> It fixes two problems:
> 
> - Drive mirroring has been broken since that commit, since the event
>   indicating mirror readiness isn't processed while the VM object is locked.
> - Migration did not wait until the drive mirrors were properly cancelled,
>   and this could cause disk corruption.
> 
> Patch 1 moves qemuBlockJobEventProcess into a separate source file so it can
> be used by both qemu_driver and qemu_migration. Patch 2 introduces new
> qemuBlockJobSync* help functions to manage a synchronous block job. Patch 3
> ensures that a thread waiting on a synchronous block job event is woken up
> should the domain crash. Patches 4 and 5 use the new synchronous block job
> helpers in qemu_driver and qemu_migration respectively.
> 
> Michael Chapman (5):
>   qemuBlockJobEventProcess: move to new source file
>   qemuBlockJobSync*: introduce sync block job helpers
>   qemuProcessStop: wake up pending sync block jobs
>   qemuDomainBlockJobAbort: use sync block job helpers
>   qemu: migration: use sync block job helpers
> 
>  po/POTFILES.in            |   1 +
>  src/Makefile.am           |   1 +
>  src/qemu/qemu_blockjob.c  | 331 ++++++++++++++++++++++++++++++++++
>  src/qemu/qemu_blockjob.h  |  49 ++++++
>  src/qemu/qemu_driver.c    | 174 +++---------------
>  src/qemu/qemu_migration.c | 439 ++++++++++++++++++++++++++++------------------
>  src/qemu/qemu_process.c   |   7 +
>  7 files changed, 676 insertions(+), 326 deletions(-)
>  create mode 100644 src/qemu/qemu_blockjob.c
>  create mode 100644 src/qemu/qemu_blockjob.h
> 

ACK series.

Even though this is rather big patch set, it fixes important bug.
Therefore I'm pushing this now. Thanks for chasing the problem down.

Michal


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]