On 05/24/2016 07:47 AM, Kevin Wolf wrote: > So far, bdrv_close_all() first removed all root BlockDriverStates of > BlockBackends and monitor owned BDSes, and then assumed that the > remaining BDSes must be related to jobs and cancelled these jobs. > > This order doesn't work that well any more when block jobs use > BlockBackends internally because then they will lose their BDS before > being cancelled. > > This patch changes bdrv_close_all() to first cancel all jobs and then > remove all root BDSes from the remaining BBs. > > Signed-off-by: Kevin Wolf <kw...@redhat.com> > --- > block.c | 23 ++--------------------- > blockjob.c | 13 +++++++++++++ > include/block/blockjob.h | 7 +++++++ > 3 files changed, 22 insertions(+), 21 deletions(-) >
Reviewed-by: Eric Blake <ebl...@redhat.com> -- Eric Blake eblake redhat com +1-919-301-3266 Libvirt virtualization library http://libvirt.org
signature.asc
Description: OpenPGP digital signature