Hi all! v1 was "[RFC 0/3] 64bit block-layer part I", please refer to initial cover-letter https://lists.gnu.org/archive/html/qemu-devel/2020-03/msg08723.html for motivation.
v2: patch 02 is unchanged, add Stefan's r-b. Everything other is changed a lot. What's new: - conversion of block/io.c is now done step-by-step, to make careful review possible as well as future bisecting - converting of driver handlers split by io type - convert write_zeroes and discard (so the series is not called "part I" any more). I decided to convert most of things alltogether, leaving simple wrappers only in unobvious places. Still, if you consider it risky, I can refactor it to use only wrappers as a first patch and then update driver-by-driver, but it would be lot more patches, I'm not sure it worth doing. Vladimir Sementsov-Ogievskiy (17): block/throttle-groups: throttle_group_co_io_limits_intercept(): 64bit bytes block: use int64_t as bytes type in tracked requests block/io: use int64_t bytes parameter in bdrv_check_byte_request() 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 block/block-backend: convert blk io path to use int64_t parameters block: use int64_t instead of uint64_t in driver read handlers block: use int64_t instead of uint64_t in driver write handlers block: use int64_t instead of uint64_t in copy_range driver handlers block: use int64_t instead of int in driver write_zeroes handlers block: use int64_t instead of int in driver discard handlers include/block/block.h | 16 ++--- include/block/block_int.h | 56 ++++++++-------- include/block/throttle-groups.h | 2 +- include/sysemu/block-backend.h | 26 ++++---- block/backup-top.c | 9 ++- block/blkdebug.c | 8 +-- block/blklogwrites.c | 12 ++-- block/blkreplay.c | 8 +-- block/blkverify.c | 6 +- block/block-backend.c | 60 +++++++++--------- block/bochs.c | 2 +- block/cloop.c | 2 +- block/commit.c | 2 +- block/copy-on-read.c | 8 +-- block/crypto.c | 4 +- block/curl.c | 2 +- block/dmg.c | 2 +- block/file-posix.c | 42 ++++++++---- block/filter-compress.c | 10 +-- block/gluster.c | 14 ++-- block/io.c | 109 +++++++++++++++++--------------- block/iscsi.c | 34 +++++++--- block/mirror.c | 8 +-- block/nbd.c | 16 +++-- block/nfs.c | 8 +-- block/null.c | 8 +-- block/nvme.c | 33 +++++++--- block/qcow.c | 12 ++-- block/qcow2.c | 29 +++++---- block/qed.c | 17 +++-- block/quorum.c | 8 +-- block/raw-format.c | 32 +++++----- block/rbd.c | 4 +- block/sheepdog.c | 11 +++- block/throttle-groups.c | 2 +- block/throttle.c | 8 +-- block/vdi.c | 4 +- block/vmdk.c | 10 +-- block/vpc.c | 4 +- block/vvfat.c | 6 +- tests/test-bdrv-drain.c | 8 +-- block/trace-events | 14 ++-- 42 files changed, 379 insertions(+), 297 deletions(-) -- 2.21.0