ping
11.12.2020 21:39, Vladimir Sementsov-Ogievskiy wrote:
Hi all!
We want 64bit write-zeroes, and for this, convert all io functions to
64bit.
We chose signed type, to be consistent with off_t (which is signed) and
with possibility for signed return type (where negative value means
error).
Please refer to initial cover-letter
https://lists.gnu.org/archive/html/qemu-devel/2020-03/msg08723.html
for more info.
v4: I found, that some more work is needed for block/block-backend, so
decided to make partI, converting block/io
v4 is based on Kevin's block branch ([PULL 00/34] Block layer patches)
for BDRV_MAX_LENGTH
changes:
01-05: new
06: add Alberto's r-b
07: new
08-16: rebase, add new-style request check, improve commit-msg, drop r-bs
Based-on: <20201211170812.228643-1-kw...@redhat.com>
Vladimir Sementsov-Ogievskiy (16):
block: refactor bdrv_check_request: add errp
util/iov: make qemu_iovec_init_extended() honest
block: fix theoretical overflow in bdrv_init_padding()
block/io: refactor bdrv_pad_request(): move bdrv_pad_request() up
block/io: bdrv_pad_request(): support qemu_iovec_init_extended failure
block/throttle-groups: throttle_group_co_io_limits_intercept(): 64bit
bytes
block/io: improve bdrv_check_request: check qiov too
block: use int64_t as bytes type in tracked requests
block/io: use int64_t bytes in driver wrappers
block/io: support int64_t bytes in bdrv_co_do_pwrite_zeroes()
block/io: support int64_t bytes in bdrv_aligned_pwritev()
block/io: support int64_t bytes in bdrv_co_do_copy_on_readv()
block/io: support int64_t bytes in bdrv_aligned_preadv()
block/io: support int64_t bytes in bdrv_co_p{read,write}v_part()
block/io: support int64_t bytes in read/write wrappers
block/io: use int64_t bytes in copy_range
include/block/block.h | 17 +-
include/block/block_int.h | 26 +--
include/block/throttle-groups.h | 2 +-
include/qemu/iov.h | 2 +-
block/blkverify.c | 2 +-
block/file-posix.c | 2 +-
block/io.c | 274 ++++++++++++++++++++++----------
block/throttle-groups.c | 5 +-
tests/test-write-threshold.c | 5 +-
util/iov.c | 25 ++-
block/trace-events | 12 +-
11 files changed, 252 insertions(+), 120 deletions(-)
--
Best regards,
Vladimir