Re: [sheepdog] [PATCH v3 00/17] 64bit block-layer

2020-12-01 Thread Vladimir Sementsov-Ogievskiy
01.12.2020 19:07, Vladimir Sementsov-Ogievskiy wrote: I have an idea: instead of auditing each function callers, can we just make some good assumptions (like that the whole offset/bytes request being aligned to bs->request_alignement doesn't lay inside [0..INT64_MAX] region), check it o

Re: [sheepdog] [PATCH v3 00/17] 64bit block-layer

2020-12-01 Thread Vladimir Sementsov-Ogievskiy
ong, we'll have a crash and fix the bug. 30.04.2020 14:10, 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 (wh

Re: [sheepdog] [PATCH v2 0/2] block: deprecate the sheepdog driver

2020-09-23 Thread Vladimir Sementsov-Ogievskiy
22.09.2020 21:11, Neal Gompa wrote: On Tue, Sep 22, 2020 at 1:43 PM Daniel P. Berrangé wrote: On Tue, Sep 22, 2020 at 01:09:06PM -0400, Neal Gompa wrote: On Tue, Sep 22, 2020 at 12:16 PM Daniel P. Berrangé wrote: 2 years back I proposed dropping the sheepdog mailing list from the

Re: [sheepdog] [PATCH v2 2/2] block: deprecate the sheepdog block driver

2020-09-22 Thread Vladimir Sementsov-Ogievskiy
Reviewed-by: Vladimir Sementsov-Ogievskiy -- Best regards, Vladimir -- sheepdog mailing list sheepdog@lists.wpkg.org https://lists.wpkg.org/mailman/listinfo/sheepdog

Re: [sheepdog] [PATCH v2 1/2] block: drop moderated sheepdog mailing list from MAINTAINERS file

2020-09-22 Thread Vladimir Sementsov-Ogievskiy
. Berrangé Reviewed-by: Vladimir Sementsov-Ogievskiy -- Best regards, Vladimir -- sheepdog mailing list sheepdog@lists.wpkg.org https://lists.wpkg.org/mailman/listinfo/sheepdog

Re: [sheepdog] [PATCH v3 05/17] block/io: support int64_t bytes in bdrv_co_do_pwrite_zeroes()

2020-06-23 Thread Vladimir Sementsov-Ogievskiy
11.05.2020 21:34, Eric Blake wrote: On 5/11/20 12:17 PM, Alberto Garcia wrote: On Thu 30 Apr 2020 01:10:21 PM CEST, Vladimir Sementsov-Ogievskiy wrote: compute 'int tail' via % 'int alignment' - safe tail = (offset + bytes) % alignment; both are int64_t, no chance of overflow here

Re: [sheepdog] [PATCH v3 07/17] block/io: support int64_t bytes in bdrv_co_do_copy_on_readv()

2020-05-22 Thread Vladimir Sementsov-Ogievskiy
22.05.2020 01:29, Eric Blake wrote: On 4/30/20 6:10 AM, Vladimir Sementsov-Ogievskiy wrote: We are generally moving to int64_t for both offset and bytes parameters on all io paths. Main motivation is realization of 64-bit write_zeroes operation for fast zeroing large disk chunks, up

Re: [sheepdog] [PATCH v3 17/17] block: use int64_t instead of int in driver discard handlers

2020-05-06 Thread Vladimir Sementsov-Ogievskiy
30.04.2020 14:10, Vladimir Sementsov-Ogievskiy wrote: We are generally moving to int64_t for both offset and bytes parameters on all io paths. Main motivation is realization of 64-bit write_zeroes operation for fast zeroing large disk chunks, up to the whole disk. We chose signed type

[sheepdog] [PATCH v3 17/17] block: use int64_t instead of int in driver discard handlers

2020-04-30 Thread Vladimir Sementsov-Ogievskiy
: 64bit-block-status Signed-off-by: Vladimir Sementsov-Ogievskiy --- include/block/block_int.h | 2 +- block/backup-top.c| 2 +- block/blkdebug.c | 2 +- block/blklogwrites.c | 4 ++-- block/blkreplay.c | 2 +- block/copy-on-read.c | 2 +- block/file-posix.c

[sheepdog] [PATCH v3 11/17] block/io: use int64_t bytes in copy_range

2020-04-30 Thread Vladimir Sementsov-Ogievskiy
) and with possibility for signed return type (where negative value means error). So, convert now copy_range parameters which are already 64bit to signed type. Series: 64bit-block-status Signed-off-by: Vladimir Sementsov-Ogievskiy --- include/block/block.h | 6 +++--- include/block/block_int.h | 12

[sheepdog] [PATCH v3 13/17] block: use int64_t instead of uint64_t in driver read handlers

2020-04-30 Thread Vladimir Sementsov-Ogievskiy
) and with possibility for signed return type (where negative value means error). So, convert driver read handlers parameters which are already 64bit to signed type. While being here, convert also flags parameter to be BdrvRequestFlags. Series: 64bit-block-status Signed-off-by: Vladimir Sementsov-Ogievskiy

[sheepdog] [PATCH v3 08/17] block/io: support int64_t bytes in bdrv_aligned_preadv()

2020-04-30 Thread Vladimir Sementsov-Ogievskiy
) and with possibility for signed return type (where negative value means error). So, prepare bdrv_aligned_preadv() now. Make byte variable in bdrv_padding_rmw_read() int64_t, as it defined only to be passed to bdrv_aligned_preadv(). Series: 64bit-block-status Signed-off-by: Vladimir Sementsov-Ogievskiy --- block

[sheepdog] [PATCH v3 15/17] block: use int64_t instead of uint64_t in copy_range driver handlers

2020-04-30 Thread Vladimir Sementsov-Ogievskiy
) and with possibility for signed return type (where negative value means error). So, convert driver copy_range handlers parameters which are already 64bit to signed type. Series: 64bit-block-status Signed-off-by: Vladimir Sementsov-Ogievskiy --- include/block/block_int.h | 12 ++-- block/file-posix.c

[sheepdog] [PATCH v3 16/17] block: use int64_t instead of int in driver write_zeroes handlers

2020-04-30 Thread Vladimir Sementsov-Ogievskiy
. Series: 64bit-block-status Signed-off-by: Vladimir Sementsov-Ogievskiy --- include/block/block_int.h | 2 +- block/backup-top.c| 2 +- block/blkdebug.c | 2 +- block/blklogwrites.c | 4 ++-- block/blkreplay.c | 2 +- block/copy-on-read.c | 2 +- block/file

[sheepdog] [PATCH v3 04/17] block/io: use int64_t bytes in driver wrappers

2020-04-30 Thread Vladimir Sementsov-Ogievskiy
usage. Still, 64bit discard and write_zeroes (which doesn't use QEMUIOVector) should work even on 32bit machines, not being limited by max_transfer. For now, we safe anyway, as all input goes through bdrv_aligned_pwritev() and bdrv_aligned_preadv(), which are limiting max_transfer to INT_MAX. Series: 6

[sheepdog] [PATCH v3 05/17] block/io: support int64_t bytes in bdrv_co_do_pwrite_zeroes()

2020-04-30 Thread Vladimir Sementsov-Ogievskiy
rather than 32-bit clamping, but it does not have to happen here. Series: 64bit-block-status Signed-off-by: Vladimir Sementsov-Ogievskiy Reviewed-by: Eric Blake --- block/io.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/block/io.c b/block/io.c index eeba3b828c

[sheepdog] [PATCH v3 10/17] block/io: support int64_t bytes in read/write wrappers

2020-04-30 Thread Vladimir Sementsov-Ogievskiy
) and with possibility for signed return type (where negative value means error). Now, when bdrv_co_preadv_part() and bdrv_co_pwritev_part() updated, update all their wrappers. Series: 64bit-block-status Signed-off-by: Vladimir Sementsov-Ogievskiy --- include/block/block.h | 11 ++- include/block

[sheepdog] [PATCH v3 14/17] block: use int64_t instead of uint64_t in driver write handlers

2020-04-30 Thread Vladimir Sementsov-Ogievskiy
) and with possibility for signed return type (where negative value means error). So, convert driver write handlers parameters which are already 64bit to signed type. While being here, convert also flags parameter to be BdrvRequestFlags. Series: 64bit-block-status Signed-off-by: Vladimir Sementsov-Ogievskiy

[sheepdog] [PATCH v3 09/17] block/io: support int64_t bytes in bdrv_co_p{read, write}v_part()

2020-04-30 Thread Vladimir Sementsov-Ogievskiy
) and with possibility for signed return type (where negative value means error). So, prepare bdrv_co_preadv_part() and bdrv_co_pwritev_part() and their remaining dependencies now. Series: 64bit-block-status Signed-off-by: Vladimir Sementsov-Ogievskiy --- include/block/block_int.h | 4 ++-- block/io.c

[sheepdog] [PATCH v3 12/17] block/block-backend: convert blk io path to use int64_t parameters

2020-04-30 Thread Vladimir Sementsov-Ogievskiy
) and with possibility for signed return type (where negative value means error). Now bdrv layer is converted, convert blk layer too. Series: 64bit-block-status Signed-off-by: Vladimir Sementsov-Ogievskiy --- include/sysemu/block-backend.h | 26 +++ block/block-backend.c | 60

[sheepdog] [PATCH v3 06/17] block/io: support int64_t bytes in bdrv_aligned_pwritev()

2020-04-30 Thread Vladimir Sementsov-Ogievskiy
) and with possibility for signed return type (where negative value means error). So, prepare bdrv_aligned_pwritev() now and convert the dependencies: bdrv_co_write_req_prepare() and bdrv_co_write_req_finish() to signed type bytes. Series: 64bit-block-status Signed-off-by: Vladimir Sementsov-Ogievskiy --- block

[sheepdog] [PATCH v3 03/17] block/io: use int64_t bytes parameter in bdrv_check_byte_request()

2020-04-30 Thread Vladimir Sementsov-Ogievskiy
to do per iteration So it looks like at present we are safe. Series: 64bit-block-status Signed-off-by: Vladimir Sementsov-Ogievskiy Reviewed-by: Eric Blake --- block/io.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/block/io.c b/block/io.c index 20ebf3c536..7a7d

[sheepdog] [PATCH v3 01/17] block/throttle-groups: throttle_group_co_io_limits_intercept(): 64bit bytes

2020-04-30 Thread Vladimir Sementsov-Ogievskiy
not introduce any 64-bit gotchas once throttle_co_p{read,write}v are relaxed, and assuming throttle_account() is not buggy. Series: 64bit-block-status Signed-off-by: Vladimir Sementsov-Ogievskiy Reviewed-by: Eric Blake --- include/block/throttle-groups.h | 2 +- block/throttle-groups.c | 5

[sheepdog] [PATCH v3 02/17] block: use int64_t as bytes type in tracked requests

2020-04-30 Thread Vladimir Sementsov-Ogievskiy
) and with possibility for signed return type (where negative value means error). So, convert tracked requests now. Series: 64bit-block-status Signed-off-by: Vladimir Sementsov-Ogievskiy Reviewed-by: Stefan Hajnoczi Reviewed-by: Eric Blake --- include/block/block_int.h | 4 ++-- block/io.c| 11

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

2020-04-30 Thread Vladimir Sementsov-Ogievskiy
rv_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-vsement...@virtuozzo.com> Series: 64bit-block-status Vladimir Sementsov-Ogievskiy

Re: [sheepdog] [PATCH v2 06/17] block/io: support int64_t bytes in bdrv_aligned_pwritev()

2020-04-30 Thread Vladimir Sementsov-Ogievskiy
30.04.2020 1:04, Eric Blake wrote: On 4/27/20 3:23 AM, Vladimir Sementsov-Ogievskiy wrote: We are generally moving to int64_t for both offset and bytes parameters on all io paths. Prepare bdrv_aligned_pwritev() now (and convert the dependencies: bdrv_co_write_req_prepare

Re: [sheepdog] [PATCH v2 02/17] block: use int64_t as bytes type in tracked requests

2020-04-30 Thread Vladimir Sementsov-Ogievskiy
29.04.2020 18:50, Eric Blake wrote: On 4/27/20 3:23 AM, Vladimir Sementsov-Ogievskiy wrote: We are generally moving to int64_t for both offset and bytes parameters on all io paths. Convert tracked requests now. As mentioned elsewhere in the thread, this states 'what' but not 'why'; adding

Re: [sheepdog] [PATCH v2 02/17] block: use int64_t as bytes type in tracked requests

2020-04-30 Thread Vladimir Sementsov-Ogievskiy
29.04.2020 18:50, Eric Blake wrote: On 4/27/20 3:23 AM, Vladimir Sementsov-Ogievskiy wrote: We are generally moving to int64_t for both offset and bytes parameters on all io paths. Convert tracked requests now. As mentioned elsewhere in the thread, this states 'what' but not 'why'; adding

Re: [sheepdog] [PATCH v2 06/17] block/io: support int64_t bytes in bdrv_aligned_pwritev()

2020-04-29 Thread Vladimir Sementsov-Ogievskiy
30.04.2020 8:30, Vladimir Sementsov-Ogievskiy wrote: 30.04.2020 8:25, Vladimir Sementsov-Ogievskiy wrote: 30.04.2020 1:04, Eric Blake wrote: On 4/27/20 3:23 AM, Vladimir Sementsov-Ogievskiy wrote: We are generally moving to int64_t for both offset and bytes parameters on all io paths. Prepare

Re: [sheepdog] [PATCH v2 06/17] block/io: support int64_t bytes in bdrv_aligned_pwritev()

2020-04-29 Thread Vladimir Sementsov-Ogievskiy
30.04.2020 8:25, Vladimir Sementsov-Ogievskiy wrote: 30.04.2020 1:04, Eric Blake wrote: On 4/27/20 3:23 AM, Vladimir Sementsov-Ogievskiy wrote: We are generally moving to int64_t for both offset and bytes parameters on all io paths. Prepare bdrv_aligned_pwritev() now (and convert

Re: [sheepdog] [PATCH v2 06/17] block/io: support int64_t bytes in bdrv_aligned_pwritev()

2020-04-29 Thread Vladimir Sementsov-Ogievskiy
30.04.2020 1:04, Eric Blake wrote: On 4/27/20 3:23 AM, Vladimir Sementsov-Ogievskiy wrote: We are generally moving to int64_t for both offset and bytes parameters on all io paths. Prepare bdrv_aligned_pwritev() now (and convert the dependencies: bdrv_co_write_req_prepare

Re: [sheepdog] [PATCH v2 03/17] block/io: use int64_t bytes parameter in bdrv_check_byte_request()

2020-04-29 Thread Vladimir Sementsov-Ogievskiy
29.04.2020 22:27, Eric Blake wrote: On 4/27/20 3:23 AM, Vladimir Sementsov-Ogievskiy wrote: We are generally moving to int64_t for both offset and bytes parameters on all io paths. Convert bdrv_check_byte_request() now. Signed-off-by: Vladimir Sementsov-Ogievskiy ---   block/io.c | 6

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

2020-04-28 Thread Vladimir Sementsov-Ogievskiy
29.04.2020 0:33, Eric Blake wrote: On 4/27/20 3:23 AM, 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

Re: [sheepdog] [PATCH v2 01/17] block/throttle-groups: throttle_group_co_io_limits_intercept(): 64bit bytes

2020-04-28 Thread Vladimir Sementsov-Ogievskiy
29.04.2020 1:09, Eric Blake wrote: On 4/27/20 3:23 AM, Vladimir Sementsov-Ogievskiy wrote: The function is called from 64bit io handlers, and bytes is just passed to throttle_account() which is 64bit too (unsigned though). So, let's convert intermediate argument to 64bit too. My audit

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

2020-04-27 Thread Vladimir Sementsov-Ogievskiy
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.

Re: [sheepdog] [PATCH v2 02/17] block: use int64_t as bytes type in tracked requests

2020-04-27 Thread Vladimir Sementsov-Ogievskiy
27.04.2020 13:11, Philippe Mathieu-Daudé wrote: On 4/27/20 10:23 AM, Vladimir Sementsov-Ogievskiy wrote: We are generally moving to int64_t for both offset and bytes parameters on all io paths. Convert tracked requests now. This doesn't seem a strong justification... If I understand correctly

Re: [sheepdog] [PATCH v2 02/17] block: use int64_t as bytes type in tracked requests

2020-04-27 Thread Vladimir Sementsov-Ogievskiy
27.04.2020 11:23, Vladimir Sementsov-Ogievskiy wrote: We are generally moving to int64_t for both offset and bytes parameters on all io paths. Convert tracked requests now. Signed-off-by: Vladimir Sementsov-Ogievskiy Reviewed-by: Stefan Hajnoczi --- include/block/block_int.h | 4

[sheepdog] [PATCH v2 12/17] block/block-backend: convert blk io path to use int64_t parameters

2020-04-27 Thread Vladimir Sementsov-Ogievskiy
We are generally moving to int64_t for both offset and bytes parameters on all io paths. Now bdrv layer is converted, convert blk layer too. Signed-off-by: Vladimir Sementsov-Ogievskiy --- include/sysemu/block-backend.h | 26 +++ block/block-backend.c | 60

[sheepdog] [PATCH v2 14/17] block: use int64_t instead of uint64_t in driver write handlers

2020-04-27 Thread Vladimir Sementsov-Ogievskiy
We are generally moving to int64_t for both offset and bytes parameters on all io paths. Convert driver write handlers parameters which are already 64bit to signed type. Signed-off-by: Vladimir Sementsov-Ogievskiy --- include/block/block_int.h | 10 +- block/backup-top.c| 3

[sheepdog] [PATCH v2 08/17] block/io: support int64_t bytes in bdrv_aligned_preadv()

2020-04-27 Thread Vladimir Sementsov-Ogievskiy
We are generally moving to int64_t for both offset and bytes parameters on all io paths. Prepare bdrv_aligned_preadv() now. Make byte variable in bdrv_padding_rmw_read() int64_t, as it defined only to be passed to bdrv_aligned_preadv(). Signed-off-by: Vladimir Sementsov-Ogievskiy --- block

[sheepdog] [PATCH v2 07/17] block/io: support int64_t bytes in bdrv_co_do_copy_on_readv()

2020-04-27 Thread Vladimir Sementsov-Ogievskiy
We are generally moving to int64_t for both offset and bytes parameters on all io paths. Prepare bdrv_co_do_copy_on_readv() now. Signed-off-by: Vladimir Sementsov-Ogievskiy --- block/io.c | 6 +++--- block/trace-events | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git

[sheepdog] [PATCH v2 17/17] block: use int64_t instead of int in driver discard handlers

2020-04-27 Thread Vladimir Sementsov-Ogievskiy
it is not obvious. Signed-off-by: Vladimir Sementsov-Ogievskiy --- include/block/block_int.h | 2 +- block/backup-top.c| 2 +- block/blkdebug.c | 2 +- block/blklogwrites.c | 4 ++-- block/blkreplay.c | 2 +- block/copy-on-read.c | 2 +- block/file-posix.c

[sheepdog] [PATCH v2 11/17] block/io: use int64_t bytes in copy_range

2020-04-27 Thread Vladimir Sementsov-Ogievskiy
We are generally moving to int64_t for both offset and bytes parameters on all io paths. Convert copy_range parameters which are already 64bit to signed type. Signed-off-by: Vladimir Sementsov-Ogievskiy --- include/block/block.h | 6 +++--- include/block/block_int.h | 12

[sheepdog] [PATCH v2 13/17] block: use int64_t instead of uint64_t in driver read handlers

2020-04-27 Thread Vladimir Sementsov-Ogievskiy
We are generally moving to int64_t for both offset and bytes parameters on all io paths. Convert driver read handlers parameters which are already 64bit to signed type. Signed-off-by: Vladimir Sementsov-Ogievskiy --- include/block/block_int.h | 6 +++--- block/backup-top.c| 2

[sheepdog] [PATCH v2 16/17] block: use int64_t instead of int in driver write_zeroes handlers

2020-04-27 Thread Vladimir Sementsov-Ogievskiy
it is not obvious. Signed-off-by: Vladimir Sementsov-Ogievskiy --- include/block/block_int.h | 2 +- block/backup-top.c| 2 +- block/blkdebug.c | 2 +- block/blklogwrites.c | 4 ++-- block/blkreplay.c | 2 +- block/copy-on-read.c | 2 +- block/file

[sheepdog] [PATCH v2 06/17] block/io: support int64_t bytes in bdrv_aligned_pwritev()

2020-04-27 Thread Vladimir Sementsov-Ogievskiy
We are generally moving to int64_t for both offset and bytes parameters on all io paths. Prepare bdrv_aligned_pwritev() now (and convert the dependencies: bdrv_co_write_req_prepare() and bdrv_co_write_req_finish() to signed type bytes) Signed-off-by: Vladimir Sementsov-Ogievskiy --- block/io.c

[sheepdog] [PATCH v2 09/17] block/io: support int64_t bytes in bdrv_co_p{read, write}v_part()

2020-04-27 Thread Vladimir Sementsov-Ogievskiy
We are generally moving to int64_t for both offset and bytes parameters on all io paths. Prepare bdrv_co_preadv_part() and bdrv_co_pwritev_part() and their remaining dependencies now. Signed-off-by: Vladimir Sementsov-Ogievskiy --- include/block/block_int.h | 4 ++-- block/io.c

[sheepdog] [PATCH v2 10/17] block/io: support int64_t bytes in read/write wrappers

2020-04-27 Thread Vladimir Sementsov-Ogievskiy
Now, when bdrv_co_preadv_part() and bdrv_co_pwritev_part() updated, update all their wrappers. Signed-off-by: Vladimir Sementsov-Ogievskiy --- include/block/block.h | 10 +- include/block/block_int.h | 4 ++-- block/blkverify.c | 2 +- block/io.c| 17

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

2020-04-27 Thread Vladimir Sementsov-Ogievskiy
ng 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): b

[sheepdog] [PATCH v2 01/17] block/throttle-groups: throttle_group_co_io_limits_intercept(): 64bit bytes

2020-04-27 Thread Vladimir Sementsov-Ogievskiy
The function is called from 64bit io handlers, and bytes is just passed to throttle_account() which is 64bit too (unsigned though). So, let's convert intermediate argument to 64bit too. Signed-off-by: Vladimir Sementsov-Ogievskiy --- include/block/throttle-groups.h | 2 +- block/throttle

[sheepdog] [PATCH v2 05/17] block/io: support int64_t bytes in bdrv_co_do_pwrite_zeroes()

2020-04-27 Thread Vladimir Sementsov-Ogievskiy
We are generally moving to int64_t for both offset and bytes parameters on all io paths. Prepare bdrv_co_do_pwrite_zeroes() now. Signed-off-by: Vladimir Sementsov-Ogievskiy --- block/io.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/block/io.c b/block/io.c index

[sheepdog] [PATCH v2 04/17] block/io: use int64_t bytes in driver wrappers

2020-04-27 Thread Vladimir Sementsov-Ogievskiy
We are generally moving to int64_t for both offset and bytes parameters on all io paths. Convert driver wrappers parameters which are already 64bit to signed type. Signed-off-by: Vladimir Sementsov-Ogievskiy --- block/io.c | 8 1 file changed, 4 insertions(+), 4 deletions(-) diff

[sheepdog] [PATCH v2 03/17] block/io: use int64_t bytes parameter in bdrv_check_byte_request()

2020-04-27 Thread Vladimir Sementsov-Ogievskiy
We are generally moving to int64_t for both offset and bytes parameters on all io paths. Convert bdrv_check_byte_request() now. Signed-off-by: Vladimir Sementsov-Ogievskiy --- block/io.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/block/io.c b/block/io.c index

[sheepdog] [PATCH v2 02/17] block: use int64_t as bytes type in tracked requests

2020-04-27 Thread Vladimir Sementsov-Ogievskiy
We are generally moving to int64_t for both offset and bytes parameters on all io paths. Convert tracked requests now. Signed-off-by: Vladimir Sementsov-Ogievskiy Reviewed-by: Stefan Hajnoczi --- include/block/block_int.h | 4 ++-- block/io.c| 11 ++- 2 files changed

Re: [sheepdog] [PATCH 09/17] block: Refactor bdrv_has_zero_init{, _truncate}

2020-02-05 Thread Vladimir Sementsov-Ogievskiy
05.02.2020 17:07, Eric Blake wrote: On 2/5/20 1:51 AM, Vladimir Sementsov-Ogievskiy wrote: +typedef enum { +    /* + * bdrv_known_zeroes() should include this bit if the contents of + * a freshly-created image with no backing file reads as all + * zeroes without any additional

Re: [sheepdog] [PATCH 09/17] block: Refactor bdrv_has_zero_init{, _truncate}

2020-02-04 Thread Vladimir Sementsov-Ogievskiy
04.02.2020 20:42, Max Reitz wrote: On 04.02.20 16:35, Vladimir Sementsov-Ogievskiy wrote: 31.01.2020 20:44, Eric Blake wrote: Having two slightly-different function names for related purposes is unwieldy, especially since I envision adding yet another notion of zero support in an upcoming

Re: [sheepdog] [PATCH 09/17] block: Refactor bdrv_has_zero_init{, _truncate}

2020-02-04 Thread Vladimir Sementsov-Ogievskiy
31.01.2020 20:44, Eric Blake wrote: Having two slightly-different function names for related purposes is unwieldy, especially since I envision adding yet another notion of zero support in an upcoming patch. It doesn't help that bdrv_has_zero_init() is a misleading name (I originally thought

Re: [sheepdog] [PATCH 09/17] block: Refactor bdrv_has_zero_init{, _truncate}

2020-02-04 Thread Vladimir Sementsov-Ogievskiy
04.02.2020 18:49, Eric Blake wrote: On 2/4/20 9:35 AM, Vladimir Sementsov-Ogievskiy wrote: 31.01.2020 20:44, Eric Blake wrote: Having two slightly-different function names for related purposes is unwieldy, especially since I envision adding yet another notion of zero support in an upcoming

Re: [sheepdog] [PATCH 08/17] sheepdog: Consistently set bdrv_has_zero_init_truncate

2020-02-04 Thread Vladimir Sementsov-Ogievskiy
31.01.2020 20:44, Eric Blake wrote: block_int.h claims that .bdrv_has_zero_init must return 0 if .bdrv_has_zero_init_truncate does likewise; but this is violated if Hmm, you changed this in patch 04.. only the former callback is provided if .bdrv_co_truncate also exists. When adding the

Re: [sheepdog] [RFC v5 024/126] error: auto propagated local_err

2019-12-05 Thread Vladimir Sementsov-Ogievskiy
05.12.2019 17:58, Vladimir Sementsov-Ogievskiy wrote: > 05.12.2019 15:36, Markus Armbruster wrote: >> Vladimir Sementsov-Ogievskiy writes: >> >>> 04.12.2019 17:59, Markus Armbruster wrote: >>>> Vladimir Sementsov-Ogievskiy writes: >>>> &g

Re: [sheepdog] [RFC v5 024/126] error: auto propagated local_err

2019-12-05 Thread Vladimir Sementsov-Ogievskiy
05.12.2019 15:36, Markus Armbruster wrote: > Vladimir Sementsov-Ogievskiy writes: > >> 04.12.2019 17:59, Markus Armbruster wrote: >>> Vladimir Sementsov-Ogievskiy writes: >>> >>>> Here is introduced ERRP_AUTO_PROPAGATE macro, to be used at start

Re: [sheepdog] [RFC v5 024/126] error: auto propagated local_err

2019-12-05 Thread Vladimir Sementsov-Ogievskiy
04.12.2019 17:59, Markus Armbruster wrote: > Vladimir Sementsov-Ogievskiy writes: > >> Here is introduced ERRP_AUTO_PROPAGATE macro, to be used at start of >> functions with errp OUT parameter. >> >> It has three goals: >> >> 1. Fix issue with error_fat

Re: [sheepdog] [RFC v5 000/126] error: auto propagated local_err

2019-11-28 Thread Vladimir Sementsov-Ogievskiy
28.11.2019 11:54, Markus Armbruster wrote: > Please accept my sincere apologies for taking so long to reply. A few > thoughts before I dig deeper. > > Vladimir Sementsov-Ogievskiy writes: > >> Hi all! >> >> At the request of Markus: full version of errp propag

Re: [sheepdog] [RFC v5 000/126] error: auto propagated local_err

2019-11-20 Thread Vladimir Sementsov-Ogievskiy
that plan, hope someone will support it. 08.11.2019 18:30, Vladimir Sementsov-Ogievskiy wrote: > Finally, what is the plan? > > Markus what do you think? > > Now a lot of patches are reviewed, but a lot of are not. > > Is there any hope that all patches will be revi

Re: [sheepdog] [RFC v5 000/126] error: auto propagated local_err

2019-11-13 Thread Vladimir Sementsov-Ogievskiy
12.11.2019 16:46, Cornelia Huck wrote: > On Fri, 8 Nov 2019 22:57:25 +0400 > Marc-André Lureau wrote: > >> Hi >> >> On Fri, Nov 8, 2019 at 7:31 PM Vladimir Sementsov-Ogievskiy >> wrote: >>> >>> Finally, what is the plan? >>>

Re: [sheepdog] [RFC v5 000/126] error: auto propagated local_err

2019-11-08 Thread Vladimir Sementsov-Ogievskiy
Finally, what is the plan? Markus what do you think? Now a lot of patches are reviewed, but a lot of are not. Is there any hope that all patches will be reviewed? Should I resend the whole series, or may be reduce it to reviewed subsystems only? 11.10.2019 19:03, Vladimir Sementsov-Ogievskiy