On Fri, Aug 06, 2021 at 11:38:55AM +0200, Max Reitz wrote: > mirror_drained_poll() returns true whenever the job is cancelled, > because "we [can] be sure that it won't issue more requests". However, > this is only true for force-cancelled jobs, so use job_is_cancelled(). > > Signed-off-by: Max Reitz <mre...@redhat.com> > --- > block/mirror.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/block/mirror.c b/block/mirror.c > index 72e02fa34e..024fa2dcea 100644 > --- a/block/mirror.c > +++ b/block/mirror.c > @@ -1177,7 +1177,7 @@ static bool mirror_drained_poll(BlockJob *job) > * from one of our own drain sections, to avoid a deadlock waiting for > * ourselves. > */ > - if (!s->common.job.paused && !s->common.job.cancelled && !s->in_drain) { > + if (!s->common.job.paused && !job_is_cancelled(&job->job) && > !s->in_drain) { > return true; > }
Reviewed-by: Eric Blake <ebl...@redhat.com> -- Eric Blake, Principal Software Engineer Red Hat, Inc. +1-919-301-3266 Virtualization: qemu.org | libvirt.org