|
|
26ba25 |
From 322f7ce7a3bdad03b0185cbf6d16f29bb8685029 Mon Sep 17 00:00:00 2001
|
|
|
26ba25 |
From: Kevin Wolf <kwolf@redhat.com>
|
|
|
26ba25 |
Date: Tue, 26 Jun 2018 09:47:49 +0200
|
|
|
26ba25 |
Subject: [PATCH 081/268] blockjob: drop block_job_pause/resume_all()
|
|
|
26ba25 |
|
|
|
26ba25 |
RH-Author: Kevin Wolf <kwolf@redhat.com>
|
|
|
26ba25 |
Message-id: <20180626094856.6924-7-kwolf@redhat.com>
|
|
|
26ba25 |
Patchwork-id: 81068
|
|
|
26ba25 |
O-Subject: [RHV-7.6 qemu-kvm-rhev PATCH v2 06/73] blockjob: drop block_job_pause/resume_all()
|
|
|
26ba25 |
Bugzilla: 1513543
|
|
|
26ba25 |
RH-Acked-by: Jeffrey Cody <jcody@redhat.com>
|
|
|
26ba25 |
RH-Acked-by: Max Reitz <mreitz@redhat.com>
|
|
|
26ba25 |
RH-Acked-by: Fam Zheng <famz@redhat.com>
|
|
|
26ba25 |
|
|
|
26ba25 |
From: Stefan Hajnoczi <stefanha@redhat.com>
|
|
|
26ba25 |
|
|
|
26ba25 |
Commit 8119334918e86f45877cfc139192d54f2449a239 ("block: Don't
|
|
|
26ba25 |
block_job_pause_all() in bdrv_drain_all()") removed the only callers of
|
|
|
26ba25 |
block_job_pause/resume_all().
|
|
|
26ba25 |
|
|
|
26ba25 |
Pausing and resuming now happens in child_job_drained_begin/end() so
|
|
|
26ba25 |
it's no longer necessary to globally pause/resume jobs.
|
|
|
26ba25 |
|
|
|
26ba25 |
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
|
|
|
26ba25 |
Reviewed-by: John Snow <jsnow@redhat.com>
|
|
|
26ba25 |
Reviewed-by: Alberto Garcia <berto@igalia.com>
|
|
|
26ba25 |
Message-id: 20180424085240.5798-1-stefanha@redhat.com
|
|
|
26ba25 |
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
|
|
|
26ba25 |
(cherry picked from commit 23d702d898bdd8e6772d83ea9789767ed589e17e)
|
|
|
26ba25 |
Signed-off-by: Kevin Wolf <kwolf@redhat.com>
|
|
|
26ba25 |
Signed-off-by: Miroslav Rezanina <mrezanin@redhat.com>
|
|
|
26ba25 |
---
|
|
|
26ba25 |
blockjob.c | 27 ---------------------------
|
|
|
26ba25 |
include/block/blockjob_int.h | 14 --------------
|
|
|
26ba25 |
2 files changed, 41 deletions(-)
|
|
|
26ba25 |
|
|
|
26ba25 |
diff --git a/blockjob.c b/blockjob.c
|
|
|
26ba25 |
index 7064389..b39d0f8 100644
|
|
|
26ba25 |
--- a/blockjob.c
|
|
|
26ba25 |
+++ b/blockjob.c
|
|
|
26ba25 |
@@ -996,19 +996,6 @@ void *block_job_create(const char *job_id, const BlockJobDriver *driver,
|
|
|
26ba25 |
return job;
|
|
|
26ba25 |
}
|
|
|
26ba25 |
|
|
|
26ba25 |
-void block_job_pause_all(void)
|
|
|
26ba25 |
-{
|
|
|
26ba25 |
- BlockJob *job = NULL;
|
|
|
26ba25 |
- while ((job = block_job_next(job))) {
|
|
|
26ba25 |
- AioContext *aio_context = blk_get_aio_context(job->blk);
|
|
|
26ba25 |
-
|
|
|
26ba25 |
- aio_context_acquire(aio_context);
|
|
|
26ba25 |
- block_job_ref(job);
|
|
|
26ba25 |
- block_job_pause(job);
|
|
|
26ba25 |
- aio_context_release(aio_context);
|
|
|
26ba25 |
- }
|
|
|
26ba25 |
-}
|
|
|
26ba25 |
-
|
|
|
26ba25 |
void block_job_early_fail(BlockJob *job)
|
|
|
26ba25 |
{
|
|
|
26ba25 |
assert(job->status == BLOCK_JOB_STATUS_CREATED);
|
|
|
26ba25 |
@@ -1086,20 +1073,6 @@ void coroutine_fn block_job_pause_point(BlockJob *job)
|
|
|
26ba25 |
}
|
|
|
26ba25 |
}
|
|
|
26ba25 |
|
|
|
26ba25 |
-void block_job_resume_all(void)
|
|
|
26ba25 |
-{
|
|
|
26ba25 |
- BlockJob *job, *next;
|
|
|
26ba25 |
-
|
|
|
26ba25 |
- QLIST_FOREACH_SAFE(job, &block_jobs, job_list, next) {
|
|
|
26ba25 |
- AioContext *aio_context = blk_get_aio_context(job->blk);
|
|
|
26ba25 |
-
|
|
|
26ba25 |
- aio_context_acquire(aio_context);
|
|
|
26ba25 |
- block_job_resume(job);
|
|
|
26ba25 |
- block_job_unref(job);
|
|
|
26ba25 |
- aio_context_release(aio_context);
|
|
|
26ba25 |
- }
|
|
|
26ba25 |
-}
|
|
|
26ba25 |
-
|
|
|
26ba25 |
/*
|
|
|
26ba25 |
* Conditionally enter a block_job pending a call to fn() while
|
|
|
26ba25 |
* under the block_job_lock critical section.
|
|
|
26ba25 |
diff --git a/include/block/blockjob_int.h b/include/block/blockjob_int.h
|
|
|
26ba25 |
index 642adce..d5a515d 100644
|
|
|
26ba25 |
--- a/include/block/blockjob_int.h
|
|
|
26ba25 |
+++ b/include/block/blockjob_int.h
|
|
|
26ba25 |
@@ -169,20 +169,6 @@ void block_job_sleep_ns(BlockJob *job, int64_t ns);
|
|
|
26ba25 |
void block_job_yield(BlockJob *job);
|
|
|
26ba25 |
|
|
|
26ba25 |
/**
|
|
|
26ba25 |
- * block_job_pause_all:
|
|
|
26ba25 |
- *
|
|
|
26ba25 |
- * Asynchronously pause all jobs.
|
|
|
26ba25 |
- */
|
|
|
26ba25 |
-void block_job_pause_all(void);
|
|
|
26ba25 |
-
|
|
|
26ba25 |
-/**
|
|
|
26ba25 |
- * block_job_resume_all:
|
|
|
26ba25 |
- *
|
|
|
26ba25 |
- * Resume all block jobs. Must be paired with a preceding block_job_pause_all.
|
|
|
26ba25 |
- */
|
|
|
26ba25 |
-void block_job_resume_all(void);
|
|
|
26ba25 |
-
|
|
|
26ba25 |
-/**
|
|
|
26ba25 |
* block_job_early_fail:
|
|
|
26ba25 |
* @bs: The block device.
|
|
|
26ba25 |
*
|
|
|
26ba25 |
--
|
|
|
26ba25 |
1.8.3.1
|
|
|
26ba25 |
|