qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] [PATCH v2 4/5] block: Remove bdrv_read() and bdrv_write


From: Vladimir Sementsov-Ogievskiy
Subject: Re: [Qemu-devel] [PATCH v2 4/5] block: Remove bdrv_read() and bdrv_write()
Date: Mon, 6 May 2019 16:52:34 +0000

01.05.2019 21:13, Alberto Garcia wrote:
> No one is using these functions anymore, all callers have switched to
> the byte-based bdrv_pread() and bdrv_pwrite()
> 
> Signed-off-by: Alberto Garcia <address@hidden>

Reviewed-by: Vladimir Sementsov-Ogievskiy <address@hidden>

However, I doubt that we want to save error codes descriptions. On
the other hand, "Return no. of bytes on success or < 0 on error." is good
addition, but it becomes unrelated to this patch if drop error codes
description.

> ---
>   block/io.c            | 43 +++++++------------------------------------
>   include/block/block.h |  4 ----
>   2 files changed, 7 insertions(+), 40 deletions(-)
> 
> diff --git a/block/io.c b/block/io.c
> index dfc153b8d8..396d5364ba 100644
> --- a/block/io.c
> +++ b/block/io.c
> @@ -837,42 +837,6 @@ static int bdrv_prwv_co(BdrvChild *child, int64_t offset,
>       return rwco.ret;
>   }
>   
> -/*
> - * Process a synchronous request using coroutines
> - */
> -static int bdrv_rw_co(BdrvChild *child, int64_t sector_num, uint8_t *buf,
> -                      int nb_sectors, bool is_write, BdrvRequestFlags flags)
> -{
> -    QEMUIOVector qiov = QEMU_IOVEC_INIT_BUF(qiov, buf,
> -                                            nb_sectors * BDRV_SECTOR_SIZE);
> -
> -    if (nb_sectors < 0 || nb_sectors > BDRV_REQUEST_MAX_SECTORS) {
> -        return -EINVAL;
> -    }
> -
> -    return bdrv_prwv_co(child, sector_num << BDRV_SECTOR_BITS,
> -                        &qiov, is_write, flags);
> -}
> -
> -/* return < 0 if error. See bdrv_write() for the return codes */
> -int bdrv_read(BdrvChild *child, int64_t sector_num,
> -              uint8_t *buf, int nb_sectors)
> -{
> -    return bdrv_rw_co(child, sector_num, buf, nb_sectors, false, 0);
> -}
> -
> -/* Return < 0 if error. Important errors are:
> -  -EIO         generic I/O error (may happen for all errors)
> -  -ENOMEDIUM   No media inserted.
> -  -EINVAL      Invalid sector number or nb_sectors
> -  -EACCES      Trying to write a read-only device
> -*/
> -int bdrv_write(BdrvChild *child, int64_t sector_num,
> -               const uint8_t *buf, int nb_sectors)
> -{
> -    return bdrv_rw_co(child, sector_num, (uint8_t *)buf, nb_sectors, true, 
> 0);
> -}
> -
>   int bdrv_pwrite_zeroes(BdrvChild *child, int64_t offset,
>                          int bytes, BdrvRequestFlags flags)
>   {
> @@ -935,6 +899,7 @@ int bdrv_preadv(BdrvChild *child, int64_t offset, 
> QEMUIOVector *qiov)
>       return qiov->size;
>   }
>   
> +/* See bdrv_pwrite() for the return codes */
>   int bdrv_pread(BdrvChild *child, int64_t offset, void *buf, int bytes)
>   {
>       QEMUIOVector qiov = QEMU_IOVEC_INIT_BUF(qiov, buf, bytes);
> @@ -958,6 +923,12 @@ int bdrv_pwritev(BdrvChild *child, int64_t offset, 
> QEMUIOVector *qiov)
>       return qiov->size;
>   }
>   
> +/* Return no. of bytes on success or < 0 on error. Important errors are:
> +  -EIO         generic I/O error (may happen for all errors)
> +  -ENOMEDIUM   No media inserted.
> +  -EINVAL      Invalid offset or number of bytes
> +  -EACCES      Trying to write a read-only device
> +*/
>   int bdrv_pwrite(BdrvChild *child, int64_t offset, const void *buf, int 
> bytes)
>   {
>       QEMUIOVector qiov = QEMU_IOVEC_INIT_BUF(qiov, buf, bytes);
> diff --git a/include/block/block.h b/include/block/block.h
> index c7a26199aa..5e2b98b0ee 100644
> --- a/include/block/block.h
> +++ b/include/block/block.h
> @@ -316,10 +316,6 @@ int bdrv_reopen_prepare(BDRVReopenState *reopen_state,
>                           BlockReopenQueue *queue, Error **errp);
>   void bdrv_reopen_commit(BDRVReopenState *reopen_state);
>   void bdrv_reopen_abort(BDRVReopenState *reopen_state);
> -int bdrv_read(BdrvChild *child, int64_t sector_num,
> -              uint8_t *buf, int nb_sectors);
> -int bdrv_write(BdrvChild *child, int64_t sector_num,
> -               const uint8_t *buf, int nb_sectors);
>   int bdrv_pwrite_zeroes(BdrvChild *child, int64_t offset,
>                          int bytes, BdrvRequestFlags flags);
>   int bdrv_make_zero(BdrvChild *child, BdrvRequestFlags flags);
> 


-- 
Best regards,
Vladimir

reply via email to

[Prev in Thread] Current Thread [Next in Thread]