From: Vladimir Sementsov-Ogievskiy <vsementsov@virtuozzo.com>
To: qemu-block@nongnu.org
Cc: kwolf@redhat.com, fam@euphon.net, integration@gluster.org,
berto@igalia.com, pavel.dovgaluk@ispras.ru, dillaman@redhat.com,
qemu-devel@nongnu.org, sw@weilnetz.de, pl@kamp.de,
ronniesahlberg@gmail.com, mreitz@redhat.com, den@openvz.org,
sheepdog@lists.wpkg.org, vsementsov@virtuozzo.com,
stefanha@redhat.com, namei.unix@gmail.com, pbonzini@redhat.com,
jsnow@redhat.com, ari@tuxera.com
Subject: [PATCH v3 00/17] 64bit block-layer
Date: Thu, 30 Apr 2020 14:10:16 +0300 [thread overview]
Message-ID: <20200430111033.29980-1-vsementsov@virtuozzo.com> (raw)
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.
v3 is available at
https://src.openvz.org/scm/~vsementsov/qemu.git #tag up-64bit-block-layer-v3
v3: Based on "[PATCH v2 0/9] block/io: safer inc/dec in_flight sections"
Add Eric's r-bs, improve commit message with short reasoning of the whole
thing, and Eric's audits (if you don't like something, I'll change or drop for
next series).
Add "Series:" tag to each patch. Just an idea, if it's inappropriate thing,
I'll drop it.
01: add assertion that bytes > 0
02: fix indentation
06: refactor calculations in bdrv_co_write_req_prepare
09,10: simple rebase conflicts solved
Also, cover more drivers by driver-updating patches and fix int flags
to be BdrvRequestFlags flags.
Based-on: <20200427143907.5710-1-vsementsov@virtuozzo.com>
Series: 64bit-block-status
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 | 17 +++--
include/block/block_int.h | 67 ++++++++---------
include/block/throttle-groups.h | 2 +-
include/sysemu/block-backend.h | 26 +++----
block/backup-top.c | 14 ++--
block/blkdebug.c | 12 +--
block/blklogwrites.c | 16 ++--
block/blkreplay.c | 8 +-
block/blkverify.c | 10 +--
block/block-backend.c | 60 +++++++--------
block/bochs.c | 4 +-
block/cloop.c | 4 +-
block/commit.c | 2 +-
block/copy-on-read.c | 14 ++--
block/crypto.c | 8 +-
block/curl.c | 3 +-
block/dmg.c | 4 +-
block/file-posix.c | 46 ++++++++----
block/file-win32.c | 8 +-
block/filter-compress.c | 15 ++--
block/gluster.c | 14 ++--
block/io.c | 126 +++++++++++++++++---------------
block/iscsi.c | 34 ++++++---
block/mirror.c | 8 +-
block/nbd.c | 18 +++--
block/nfs.c | 12 +--
block/null.c | 18 +++--
block/nvme.c | 38 +++++++---
block/qcow.c | 16 ++--
block/qcow2.c | 34 +++++----
block/qed.c | 17 ++++-
block/quorum.c | 9 ++-
block/raw-format.c | 36 ++++-----
block/rbd.c | 10 ++-
block/sheepdog.c | 11 ++-
block/throttle-groups.c | 5 +-
block/throttle.c | 14 ++--
block/vdi.c | 8 +-
block/vmdk.c | 14 ++--
block/vpc.c | 8 +-
block/vvfat.c | 12 +--
block/vxhs.c | 8 +-
tests/test-bdrv-drain.c | 16 ++--
tests/test-block-iothread.c | 19 +++--
block/trace-events | 14 ++--
45 files changed, 488 insertions(+), 371 deletions(-)
--
2.21.0
next reply other threads:[~2020-04-30 11:15 UTC|newest]
Thread overview: 44+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-04-30 11:10 Vladimir Sementsov-Ogievskiy [this message]
2020-04-30 11:10 ` [PATCH v3 01/17] block/throttle-groups: throttle_group_co_io_limits_intercept(): 64bit bytes Vladimir Sementsov-Ogievskiy
2020-05-11 15:28 ` Alberto Garcia
2020-04-30 11:10 ` [PATCH v3 02/17] block: use int64_t as bytes type in tracked requests Vladimir Sementsov-Ogievskiy
2020-05-11 15:32 ` Alberto Garcia
2020-05-22 19:09 ` Eric Blake
2020-04-30 11:10 ` [PATCH v3 03/17] block/io: use int64_t bytes parameter in bdrv_check_byte_request() Vladimir Sementsov-Ogievskiy
2020-05-11 15:57 ` Alberto Garcia
2020-04-30 11:10 ` [PATCH v3 04/17] block/io: use int64_t bytes in driver wrappers Vladimir Sementsov-Ogievskiy
2020-05-11 16:30 ` Alberto Garcia
2020-04-30 11:10 ` [PATCH v3 05/17] block/io: support int64_t bytes in bdrv_co_do_pwrite_zeroes() Vladimir Sementsov-Ogievskiy
2020-05-08 18:20 ` Eric Blake
2020-05-11 17:17 ` Alberto Garcia
2020-05-11 18:34 ` Eric Blake
2020-06-23 10:20 ` Vladimir Sementsov-Ogievskiy
2020-06-23 16:37 ` Eric Blake
2020-04-30 11:10 ` [PATCH v3 06/17] block/io: support int64_t bytes in bdrv_aligned_pwritev() Vladimir Sementsov-Ogievskiy
2020-05-08 20:38 ` Eric Blake
2020-06-18 14:29 ` Alberto Garcia
2020-04-30 11:10 ` [PATCH v3 07/17] block/io: support int64_t bytes in bdrv_co_do_copy_on_readv() Vladimir Sementsov-Ogievskiy
2020-05-21 22:29 ` Eric Blake
2020-05-22 6:30 ` Vladimir Sementsov-Ogievskiy
2020-04-30 11:10 ` [PATCH v3 08/17] block/io: support int64_t bytes in bdrv_aligned_preadv() Vladimir Sementsov-Ogievskiy
2020-05-22 15:14 ` Eric Blake
2020-06-18 14:35 ` Alberto Garcia
2020-06-18 14:47 ` Eric Blake
2020-04-30 11:10 ` [PATCH v3 09/17] block/io: support int64_t bytes in bdrv_co_p{read, write}v_part() Vladimir Sementsov-Ogievskiy
2020-05-22 19:34 ` [PATCH v3 09/17] block/io: support int64_t bytes in bdrv_co_p{read,write}v_part() Eric Blake
2020-04-30 11:10 ` [PATCH v3 10/17] block/io: support int64_t bytes in read/write wrappers Vladimir Sementsov-Ogievskiy
2020-04-30 11:10 ` [PATCH v3 11/17] block/io: use int64_t bytes in copy_range Vladimir Sementsov-Ogievskiy
2020-04-30 11:10 ` [PATCH v3 12/17] block/block-backend: convert blk io path to use int64_t parameters Vladimir Sementsov-Ogievskiy
2020-06-23 22:11 ` Eric Blake
2020-04-30 11:10 ` [PATCH v3 13/17] block: use int64_t instead of uint64_t in driver read handlers Vladimir Sementsov-Ogievskiy
2020-04-30 11:10 ` [PATCH v3 14/17] block: use int64_t instead of uint64_t in driver write handlers Vladimir Sementsov-Ogievskiy
2020-04-30 11:10 ` [PATCH v3 15/17] block: use int64_t instead of uint64_t in copy_range driver handlers Vladimir Sementsov-Ogievskiy
2020-04-30 11:10 ` [PATCH v3 16/17] block: use int64_t instead of int in driver write_zeroes handlers Vladimir Sementsov-Ogievskiy
2020-04-30 11:10 ` [PATCH v3 17/17] block: use int64_t instead of int in driver discard handlers Vladimir Sementsov-Ogievskiy
2020-05-06 6:40 ` Vladimir Sementsov-Ogievskiy
2020-04-30 20:51 ` [PATCH v3 00/17] 64bit block-layer no-reply
2020-05-06 6:39 ` Vladimir Sementsov-Ogievskiy
2020-04-30 20:57 ` no-reply
2020-12-01 16:07 ` Vladimir Sementsov-Ogievskiy
2020-12-01 16:56 ` Vladimir Sementsov-Ogievskiy
2020-12-01 21:50 ` Eric Blake
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20200430111033.29980-1-vsementsov@virtuozzo.com \
--to=vsementsov@virtuozzo.com \
--cc=ari@tuxera.com \
--cc=berto@igalia.com \
--cc=den@openvz.org \
--cc=dillaman@redhat.com \
--cc=fam@euphon.net \
--cc=integration@gluster.org \
--cc=jsnow@redhat.com \
--cc=kwolf@redhat.com \
--cc=mreitz@redhat.com \
--cc=namei.unix@gmail.com \
--cc=pavel.dovgaluk@ispras.ru \
--cc=pbonzini@redhat.com \
--cc=pl@kamp.de \
--cc=qemu-block@nongnu.org \
--cc=qemu-devel@nongnu.org \
--cc=ronniesahlberg@gmail.com \
--cc=sheepdog@lists.wpkg.org \
--cc=stefanha@redhat.com \
--cc=sw@weilnetz.de \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.