[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH] qcow2: Return the original error code in qcow2_co_pwrite_zer
From: |
Philippe Mathieu-Daudé |
Subject: |
Re: [PATCH] qcow2: Return the original error code in qcow2_co_pwrite_zeroes() |
Date: |
Wed, 9 Sep 2020 18:41:08 +0200 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.11.0 |
On 9/9/20 2:37 PM, Alberto Garcia wrote:
> This function checks the current status of a (sub)cluster in order to
> see if an unaligned 'write zeroes' request can be done efficiently by
> simply updating the L2 metadata and without having to write actual
> zeroes to disk.
>
> If the situation does not allow using the fast path then the function
> returns -ENOTSUP and the caller falls back to writing zeroes.
>
> If can happen however that the aforementioned check returns an actual
> error code so in this case we should pass it to the caller.
>
> Signed-off-by: Alberto Garcia <berto@igalia.com>
> ---
> block/qcow2.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/block/qcow2.c b/block/qcow2.c
> index da56b1a4df..ca46cbd795 100644
> --- a/block/qcow2.c
> +++ b/block/qcow2.c
> @@ -3916,7 +3916,7 @@ static coroutine_fn int
> qcow2_co_pwrite_zeroes(BlockDriverState *bs,
> type != QCOW2_SUBCLUSTER_ZERO_PLAIN &&
> type != QCOW2_SUBCLUSTER_ZERO_ALLOC)) {
> qemu_co_mutex_unlock(&s->lock);
> - return -ENOTSUP;
> + return ret < 0 ? ret : -ENOTSUP;
> }
> } else {
> qemu_co_mutex_lock(&s->lock);
>
Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com>