Skip to content

Commit 9547907

Browse files
Vladimir Sementsov-Ogievskiyebblake
authored andcommitted
block-backend: make blk_co_preadv() 64bit
For both updated functions, the type of bytes becomes wider, so all callers should be OK with it. blk_co_preadv() only passes its arguments to blk_do_preadv(). blk_do_preadv() passes bytes to: - trace_blk_co_preadv, which is updated too - blk_check_byte_request, throttle_group_co_io_limits_intercept, bdrv_co_preadv, which are already int64_t. Note that requests exceeding INT_MAX are still restricted by blk_check_byte_request(). Signed-off-by: Vladimir Sementsov-Ogievskiy <[email protected]> Message-Id: <[email protected]> Reviewed-by: Eric Blake <[email protected]> [eblake: grammar tweaks] Signed-off-by: Eric Blake <[email protected]>
1 parent 7242db6 commit 9547907

File tree

3 files changed

+4
-4
lines changed

3 files changed

+4
-4
lines changed

block/block-backend.c

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1205,7 +1205,7 @@ static void coroutine_fn blk_wait_while_drained(BlockBackend *blk)
12051205

12061206
/* To be called between exactly one pair of blk_inc/dec_in_flight() */
12071207
static int coroutine_fn
1208-
blk_do_preadv(BlockBackend *blk, int64_t offset, unsigned int bytes,
1208+
blk_do_preadv(BlockBackend *blk, int64_t offset, int64_t bytes,
12091209
QEMUIOVector *qiov, BdrvRequestFlags flags)
12101210
{
12111211
int ret;
@@ -1236,7 +1236,7 @@ blk_do_preadv(BlockBackend *blk, int64_t offset, unsigned int bytes,
12361236
}
12371237

12381238
int coroutine_fn blk_co_preadv(BlockBackend *blk, int64_t offset,
1239-
unsigned int bytes, QEMUIOVector *qiov,
1239+
int64_t bytes, QEMUIOVector *qiov,
12401240
BdrvRequestFlags flags)
12411241
{
12421242
int ret;

block/trace-events

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ bdrv_open_common(void *bs, const char *filename, int flags, const char *format_n
55
bdrv_lock_medium(void *bs, bool locked) "bs %p locked %d"
66

77
# block-backend.c
8-
blk_co_preadv(void *blk, void *bs, int64_t offset, unsigned int bytes, int flags) "blk %p bs %p offset %"PRId64" bytes %u flags 0x%x"
8+
blk_co_preadv(void *blk, void *bs, int64_t offset, int64_t bytes, int flags) "blk %p bs %p offset %"PRId64" bytes %" PRId64 " flags 0x%x"
99
blk_co_pwritev(void *blk, void *bs, int64_t offset, unsigned int bytes, int flags) "blk %p bs %p offset %"PRId64" bytes %u flags 0x%x"
1010
blk_root_attach(void *child, void *blk, void *bs) "child %p blk %p bs %p"
1111
blk_root_detach(void *child, void *blk, void *bs) "child %p blk %p bs %p"

include/sysemu/block-backend.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -126,7 +126,7 @@ BlockBackend *blk_by_dev(void *dev);
126126
BlockBackend *blk_by_qdev_id(const char *id, Error **errp);
127127
void blk_set_dev_ops(BlockBackend *blk, const BlockDevOps *ops, void *opaque);
128128
int coroutine_fn blk_co_preadv(BlockBackend *blk, int64_t offset,
129-
unsigned int bytes, QEMUIOVector *qiov,
129+
int64_t bytes, QEMUIOVector *qiov,
130130
BdrvRequestFlags flags);
131131
int coroutine_fn blk_co_pwritev_part(BlockBackend *blk, int64_t offset,
132132
unsigned int bytes,

0 commit comments

Comments
 (0)