[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PULL 18/35] block: Implement blk_{pread, pwrite}() using generated_co_w
From: |
Hanna Reitz |
Subject: |
[PULL 18/35] block: Implement blk_{pread, pwrite}() using generated_co_wrapper |
Date: |
Tue, 12 Jul 2022 20:06:00 +0200 |
From: Alberto Faria <afaria@redhat.com>
We need to add include/sysemu/block-backend-io.h to the inputs of the
block-gen.c target defined in block/meson.build.
Signed-off-by: Alberto Faria <afaria@redhat.com>
Reviewed-by: Hanna Reitz <hreitz@redhat.com>
Message-Id: <20220705161527.1054072-7-afaria@redhat.com>
Signed-off-by: Hanna Reitz <hreitz@redhat.com>
---
block/coroutines.h | 4 ----
include/sysemu/block-backend-io.h | 10 ++++++----
block/block-backend.c | 23 -----------------------
block/meson.build | 1 +
4 files changed, 7 insertions(+), 31 deletions(-)
diff --git a/block/coroutines.h b/block/coroutines.h
index 3f41238b33..443ef2f2e6 100644
--- a/block/coroutines.h
+++ b/block/coroutines.h
@@ -112,10 +112,6 @@ bdrv_common_block_status_above(BlockDriverState *bs,
int generated_co_wrapper
nbd_do_establish_connection(BlockDriverState *bs, bool blocking, Error **errp);
-int generated_co_wrapper
-blk_do_preadv(BlockBackend *blk, int64_t offset, int64_t bytes,
- QEMUIOVector *qiov, BdrvRequestFlags flags);
-
int generated_co_wrapper
blk_do_pwritev_part(BlockBackend *blk, int64_t offset, int64_t bytes,
QEMUIOVector *qiov, size_t qiov_offset,
diff --git a/include/sysemu/block-backend-io.h
b/include/sysemu/block-backend-io.h
index b048476a47..750089fc9b 100644
--- a/include/sysemu/block-backend-io.h
+++ b/include/sysemu/block-backend-io.h
@@ -101,10 +101,12 @@ int coroutine_fn blk_co_copy_range(BlockBackend *blk_in,
int64_t off_in,
* the "I/O or GS" API.
*/
-int blk_pread(BlockBackend *blk, int64_t offset, int64_t bytes, void *buf,
- BdrvRequestFlags flags);
-int blk_pwrite(BlockBackend *blk, int64_t offset, int64_t bytes,
- const void *buf, BdrvRequestFlags flags);
+int generated_co_wrapper blk_pread(BlockBackend *blk, int64_t offset,
+ int64_t bytes, void *buf,
+ BdrvRequestFlags flags);
+int generated_co_wrapper blk_pwrite(BlockBackend *blk, int64_t offset,
+ int64_t bytes, const void *buf,
+ BdrvRequestFlags flags);
int coroutine_fn blk_co_preadv(BlockBackend *blk, int64_t offset,
int64_t bytes, QEMUIOVector *qiov,
BdrvRequestFlags flags);
diff --git a/block/block-backend.c b/block/block-backend.c
index 3203b25695..4d6c18bc39 100644
--- a/block/block-backend.c
+++ b/block/block-backend.c
@@ -1563,29 +1563,6 @@ BlockAIOCB *blk_aio_pwrite_zeroes(BlockBackend *blk,
int64_t offset,
flags | BDRV_REQ_ZERO_WRITE, cb, opaque);
}
-int blk_pread(BlockBackend *blk, int64_t offset, int64_t bytes, void *buf,
- BdrvRequestFlags flags)
-{
- int ret;
- QEMUIOVector qiov = QEMU_IOVEC_INIT_BUF(qiov, buf, bytes);
- IO_OR_GS_CODE();
-
- blk_inc_in_flight(blk);
- ret = blk_do_preadv(blk, offset, bytes, &qiov, flags);
- blk_dec_in_flight(blk);
-
- return ret;
-}
-
-int blk_pwrite(BlockBackend *blk, int64_t offset, int64_t bytes,
- const void *buf, BdrvRequestFlags flags)
-{
- QEMUIOVector qiov = QEMU_IOVEC_INIT_BUF(qiov, buf, bytes);
- IO_OR_GS_CODE();
-
- return blk_pwritev_part(blk, offset, bytes, &qiov, 0, flags);
-}
-
int64_t blk_getlength(BlockBackend *blk)
{
IO_CODE();
diff --git a/block/meson.build b/block/meson.build
index 0b2a60c99b..60bc305597 100644
--- a/block/meson.build
+++ b/block/meson.build
@@ -136,6 +136,7 @@ block_gen_c = custom_target('block-gen.c',
input: files(
'../include/block/block-io.h',
'../include/block/block-global-state.h',
+ '../include/sysemu/block-backend-io.h',
'coroutines.h'
),
command: [wrapper_py, '@OUTPUT@', '@INPUT@'])
--
2.35.3
- [PULL 25/35] block: Implement blk_pdiscard() using generated_co_wrapper, (continued)
- [PULL 25/35] block: Implement blk_pdiscard() using generated_co_wrapper, Hanna Reitz, 2022/07/12
- [PULL 15/35] block: Change blk_{pread,pwrite}() param order, Hanna Reitz, 2022/07/12
- [PULL 14/35] block: Add a 'flags' param to blk_pread(), Hanna Reitz, 2022/07/12
- [PULL 17/35] block: Make blk_co_pwrite() take a const buffer, Hanna Reitz, 2022/07/12
- [PULL 28/35] block: Add blk_co_truncate(), Hanna Reitz, 2022/07/12
- [PULL 19/35] block: Add blk_{preadv,pwritev}(), Hanna Reitz, 2022/07/12
- [PULL 31/35] qsd: Do not use error_report() before monitor_init, Hanna Reitz, 2022/07/12
- [PULL 20/35] block: Add blk_[co_]preadv_part(), Hanna Reitz, 2022/07/12
- [PULL 22/35] block: Change blk_pwrite_compressed() param order, Hanna Reitz, 2022/07/12
- [PULL 21/35] block: Export blk_pwritev_part() in block-backend-io.h, Hanna Reitz, 2022/07/12
- [PULL 18/35] block: Implement blk_{pread, pwrite}() using generated_co_wrapper,
Hanna Reitz <=
- [PULL 26/35] block: Implement blk_flush() using generated_co_wrapper, Hanna Reitz, 2022/07/12
- [PULL 27/35] block: Add blk_co_ioctl(), Hanna Reitz, 2022/07/12
- [PULL 30/35] block: Remove remaining unused symbols in coroutines.h, Hanna Reitz, 2022/07/12
- [PULL 23/35] block: Add blk_co_pwrite_compressed(), Hanna Reitz, 2022/07/12
- [PULL 29/35] block: Reorganize some declarations in block-backend-io.h, Hanna Reitz, 2022/07/12
- [PULL 32/35] iotests/297: Have mypy ignore unused ignores, Hanna Reitz, 2022/07/12
- [PULL 33/35] qsd: Unlink absolute PID file path, Hanna Reitz, 2022/07/12
- [PULL 34/35] vl: Conditionally register PID file unlink notifier, Hanna Reitz, 2022/07/12
- [PULL 35/35] vl: Unlink absolute PID file path, Hanna Reitz, 2022/07/12
- Re: [PULL 00/35] Block patches, Peter Maydell, 2022/07/13