[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH v10 12/21] commit and mirror: create new nodes using bdrv_get_aio
From: |
Emanuele Giuseppe Esposito |
Subject: |
[PATCH v10 12/21] commit and mirror: create new nodes using bdrv_get_aio_context, and not the job aiocontext |
Date: |
Mon, 25 Jul 2022 03:38:46 -0400 |
We are always using the given bs AioContext, so there is no need
to take the job ones (which is identical anyways).
This also reduces the point we need to check when protecting
job.aio_context field.
Reviewed-by: Vladimir Sementsov-Ogievskiy <vsementsov@yandex-team.ru>
Reviewed-by: Stefan Hajnoczi <stefanha@redhat.com>
Signed-off-by: Emanuele Giuseppe Esposito <eesposit@redhat.com>
---
block/commit.c | 4 ++--
block/mirror.c | 2 +-
2 files changed, 3 insertions(+), 3 deletions(-)
diff --git a/block/commit.c b/block/commit.c
index 851d1c557a..336f799172 100644
--- a/block/commit.c
+++ b/block/commit.c
@@ -370,7 +370,7 @@ void commit_start(const char *job_id, BlockDriverState *bs,
goto fail;
}
- s->base = blk_new(s->common.job.aio_context,
+ s->base = blk_new(bdrv_get_aio_context(bs),
base_perms,
BLK_PERM_CONSISTENT_READ
| BLK_PERM_WRITE_UNCHANGED);
@@ -382,7 +382,7 @@ void commit_start(const char *job_id, BlockDriverState *bs,
s->base_bs = base;
/* Required permissions are already taken with block_job_add_bdrv() */
- s->top = blk_new(s->common.job.aio_context, 0, BLK_PERM_ALL);
+ s->top = blk_new(bdrv_get_aio_context(bs), 0, BLK_PERM_ALL);
ret = blk_insert_bs(s->top, top, errp);
if (ret < 0) {
goto fail;
diff --git a/block/mirror.c b/block/mirror.c
index b38676e19d..1977e25171 100644
--- a/block/mirror.c
+++ b/block/mirror.c
@@ -1728,7 +1728,7 @@ static BlockJob *mirror_start_job(
goto fail;
}
- s->target = blk_new(s->common.job.aio_context,
+ s->target = blk_new(bdrv_get_aio_context(bs),
target_perms, target_shared_perms);
ret = blk_insert_bs(s->target, target, errp);
if (ret < 0) {
--
2.31.1
- [PATCH v10 07/21] blockjob: introduce block_job _locked() APIs, (continued)
- [PATCH v10 07/21] blockjob: introduce block_job _locked() APIs, Emanuele Giuseppe Esposito, 2022/07/25
- [PATCH v10 02/21] job.h: categorize fields in struct Job, Emanuele Giuseppe Esposito, 2022/07/25
- [PATCH v10 04/21] aio-wait.h: introduce AIO_WAIT_WHILE_UNLOCKED, Emanuele Giuseppe Esposito, 2022/07/25
- [PATCH v10 03/21] job.c: API functions not used outside should be static, Emanuele Giuseppe Esposito, 2022/07/25
- [PATCH v10 08/21] jobs: add job lock in find_* functions, Emanuele Giuseppe Esposito, 2022/07/25
- [PATCH v10 06/21] job: move and update comments from blockjob.c, Emanuele Giuseppe Esposito, 2022/07/25
- [PATCH v10 01/21] job.c: make job_mutex and job_lock/unlock() public, Emanuele Giuseppe Esposito, 2022/07/25
- [PATCH v10 12/21] commit and mirror: create new nodes using bdrv_get_aio_context, and not the job aiocontext,
Emanuele Giuseppe Esposito <=
- [PATCH v10 11/21] jobs: group together API calls under the same job lock, Emanuele Giuseppe Esposito, 2022/07/25
- [PATCH v10 05/21] job.c: add job_lock/unlock while keeping job.h intact, Emanuele Giuseppe Esposito, 2022/07/25
- [PATCH v10 14/21] jobs: protect job.aio_context with BQL and job_mutex, Emanuele Giuseppe Esposito, 2022/07/25
- [PATCH v10 16/21] blockjob: rename notifier callbacks as _locked, Emanuele Giuseppe Esposito, 2022/07/25
- [PATCH v10 20/21] blockjob: remove unused functions, Emanuele Giuseppe Esposito, 2022/07/25
- [PATCH v10 17/21] blockjob: protect iostatus field in BlockJob struct, Emanuele Giuseppe Esposito, 2022/07/25