Currently, it is impossible to complete jobs on standby (i.e. paused
ready jobs), but actually the only thing in mirror_complete() that does
not work quite well with a paused job is the job_enter() at the end.
If we make it conditional, this function works just fine even if the
mirror job is paused.
So technically this is a no-op, but obviously the intention is to accept
block-job-complete even for jobs on standby, which we need this patch
for first.
Signed-off-by: Max Reitz <mreitz@redhat.com>
Message-Id: <
20210409120422.144040-3-mreitz@redhat.com>
Signed-off-by: Kevin Wolf <kwolf@redhat.com>
}
s->should_complete = true;
- job_enter(job);
+
+ /* If the job is paused, it will be re-entered when it is resumed */
+ if (!job->paused) {
+ job_enter(job);
+ }
}
static void coroutine_fn mirror_pause(Job *job)