From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:47765) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1bEzq8-00081N-Oh for qemu-devel@nongnu.org; Mon, 20 Jun 2016 10:06:17 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1bEzq1-00077D-Ih for qemu-devel@nongnu.org; Mon, 20 Jun 2016 10:06:11 -0400 Received: from mx1.redhat.com ([209.132.183.28]:48087) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1bEzq1-00076y-AS for qemu-devel@nongnu.org; Mon, 20 Jun 2016 10:06:05 -0400 From: Stefan Hajnoczi Date: Mon, 20 Jun 2016 15:05:24 +0100 Message-Id: <1466431531-17806-14-git-send-email-stefanha@redhat.com> In-Reply-To: <1466431531-17806-1-git-send-email-stefanha@redhat.com> References: <1466431531-17806-1-git-send-email-stefanha@redhat.com> Subject: [Qemu-devel] [PULL 13/20] blockjob: move iostatus reset out of block_job_enter() List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: qemu-devel@nongnu.org Cc: Peter Maydell , Stefan Hajnoczi The QMP block-job-resume command and cancellation may want to reset the job's iostatus. The next patches add a user who does not want to reset iostatus so move it up to block_job_enter() callers. Signed-off-by: Stefan Hajnoczi Reviewed-by: Fam Zheng Reviewed-by: Paolo Bonzini Message-id: 1466096189-6477-2-git-send-email-stefanha@redhat.com --- blockdev.c | 1 + blockjob.c | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/blockdev.c b/blockdev.c index c9a0068..7299312 100644 --- a/blockdev.c +++ b/blockdev.c @@ -3811,6 +3811,7 @@ void qmp_block_job_resume(const char *device, Error **errp) job->user_paused = false; trace_qmp_block_job_resume(job); + block_job_iostatus_reset(job); block_job_resume(job); aio_context_release(aio_context); } diff --git a/blockjob.c b/blockjob.c index 01b896b..5137dce 100644 --- a/blockjob.c +++ b/blockjob.c @@ -269,7 +269,6 @@ void block_job_resume(BlockJob *job) void block_job_enter(BlockJob *job) { - block_job_iostatus_reset(job); if (job->co && !job->busy) { qemu_coroutine_enter(job->co, NULL); } @@ -278,6 +277,7 @@ void block_job_enter(BlockJob *job) void block_job_cancel(BlockJob *job) { job->cancelled = true; + block_job_iostatus_reset(job); block_job_enter(job); } -- 2.5.5