[sheepdog] [PATCH v2 00/17] 64bit block-layer

Vladimir Sementsov-Ogievskiy vsementsov at virtuozzo.com
Mon Apr 27 16:17:20 CEST 2020


Hmm. I definitely should rebase it onto "[PATCH for-5.0? 0/9] block/io: safer inc/dec in_flight sections"...


27.04.2020 11:23, Vladimir Sementsov-Ogievskiy wrote:
> 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(-)
> 


-- 
Best regards,
Vladimir


More information about the sheepdog mailing list