[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH v8 6/7] block: drop bdrv_prwv
From: |
Stefan Hajnoczi |
Subject: |
Re: [PATCH v8 6/7] block: drop bdrv_prwv |
Date: |
Thu, 24 Sep 2020 13:15:09 +0100 |
On Tue, Sep 15, 2020 at 07:44:10PM +0300, Vladimir Sementsov-Ogievskiy wrote:
> Now that we are not maintaining boilerplate code for coroutine
> wrappers, there is no more sense in keeping the extra indirection layer
> of bdrv_prwv(). Let's drop it and instead generate pure bdrv_preadv()
> and bdrv_pwritev().
>
> Currently, bdrv_pwritev() and bdrv_preadv() are returning bytes on
> success, auto generated functions will instead return zero, as their
> _co_ prototype. Still, it's simple to make the conversion safe: the
> only external user of bdrv_pwritev() is test-bdrv-drain, and it is
> comfortable enough with bdrv_co_pwritev() instead. So prototypes are
> moved to local block/coroutines.h. Next, the only internal use is
> bdrv_pread() and bdrv_pwrite(), which are modified to return bytes on
> success.
>
> Of course, it would be great to convert bdrv_pread() and bdrv_pwrite()
> to return 0 on success. But this requires audit (and probably
> conversion) of all their users, let's leave it for another day
> refactoring.
>
> Signed-off-by: Vladimir Sementsov-Ogievskiy <vsementsov@virtuozzo.com>
> Reviewed-by: Eric Blake <eblake@redhat.com>
> ---
> block/coroutines.h | 10 ++++-----
> include/block/block.h | 2 --
> block/io.c | 49 ++++++++---------------------------------
> tests/test-bdrv-drain.c | 2 +-
> 4 files changed, 15 insertions(+), 48 deletions(-)
Reviewed-by: Stefan Hajnoczi <stefanha@redhat.com>
signature.asc
Description: PGP signature
- Re: [PATCH v8 3/7] block: declare some coroutine functions in block/coroutines.h, (continued)
- [PATCH v8 2/7] block/io: refactor coroutine wrappers, Vladimir Sementsov-Ogievskiy, 2020/09/15
- [PATCH v8 5/7] block: generate coroutine-wrapper code, Vladimir Sementsov-Ogievskiy, 2020/09/15
- [PATCH v8 6/7] block: drop bdrv_prwv, Vladimir Sementsov-Ogievskiy, 2020/09/15
- [PATCH v8 7/7] block/io: refactor save/load vmstate, Vladimir Sementsov-Ogievskiy, 2020/09/15
- [PATCH v8 4/7] scripts: add block-coroutine-wrapper.py, Vladimir Sementsov-Ogievskiy, 2020/09/15