blockjob: move iostatus reset inside block_job_user_resume
commit2caf63a9039f245ef778833dfc87f0c58adba47b
authorPaolo Bonzini <pbonzini@redhat.com>
Mon, 8 May 2017 14:13:05 +0000 (8 16:13 +0200)
committerJeff Cody <jcody@redhat.com>
Wed, 24 May 2017 20:38:51 +0000 (24 16:38 -0400)
treeaa9cd1d74fb4b8fa7129e591052d1db50ed18efa
parent88691b37f86250647816d77e8e1f0933557e7df5
blockjob: move iostatus reset inside block_job_user_resume

Outside blockjob.c, the block_job_iostatus_reset function is used once
in the monitor and once in BlockBackend.  When we introduce the block
job mutex, block_job_iostatus_reset's client is going to be the block
layer (for which blockjob.c will take the block job mutex) rather than
the monitor (which will take the block job mutex by itself).

The monitor's call to block_job_iostatus_reset from the monitor comes
just before the sole call to block_job_user_resume, so reset the
iostatus directly from block_job_iostatus_reset.  This will avoid
the need to introduce separate block_job_iostatus_reset and
block_job_iostatus_reset_locked APIs.

After making this change, move the function together with the others
that were moved in the previous patch.

Reviewed-by: Stefan Hajnoczi <stefanha@redhat.com>
Reviewed-by: John Snow <jsnow@redhat.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Reviewed-by: Jeff Cody <jcody@redhat.com>
Message-id: 20170508141310.8674-7-pbonzini@redhat.com
Signed-off-by: Jeff Cody <jcody@redhat.com>
blockdev.c
blockjob.c