qemu-devel
[Top][All Lists]
Advanced

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

Re: [Qemu-devel] [PATCH v2 15/20] rbd: Handle failure for potentially la


From: Markus Armbruster
Subject: Re: [Qemu-devel] [PATCH v2 15/20] rbd: Handle failure for potentially large allocations
Date: Fri, 30 May 2014 11:33:27 +0200
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/24.3 (gnu/linux)

Kevin Wolf <address@hidden> writes:

> Some code in the block layer makes potentially huge allocations. Failure
> is not completely unexpected there, so avoid aborting qemu and handle
> out-of-memory situations gracefully.
>
> This patch addresses the allocations in the rbd block driver.
>
> Signed-off-by: Kevin Wolf <address@hidden>
> Reviewed-by: Stefan Hajnoczi <address@hidden>
> ---
>  block/rbd.c | 5 ++++-
>  1 file changed, 4 insertions(+), 1 deletion(-)
>
> diff --git a/block/rbd.c b/block/rbd.c
> index dbc79f4..2ac65a8 100644
> --- a/block/rbd.c
> +++ b/block/rbd.c
> @@ -630,7 +630,10 @@ static BlockDriverAIOCB *rbd_start_aio(BlockDriverState 
> *bs,
>      if (cmd == RBD_AIO_DISCARD || cmd == RBD_AIO_FLUSH) {
>          acb->bounce = NULL;
>      } else {
> -        acb->bounce = qemu_blockalign(bs, qiov->size);
> +        acb->bounce = qemu_try_blockalign(bs, qiov->size);
> +        if (acb->bounce == NULL) {
> +            goto failed;
> +        }
>      }
>      acb->ret = 0;
>      acb->error = 0;

/work/armbru/qemu/block/rbd.c: In function ‘rbd_start_aio’:
/work/armbru/qemu/block/rbd.c:696:11: warning: ‘rcb’ may be used uninitialized 
in this function [-Wmaybe-uninitialized]
     g_free(rcb);
           ^

Fix is obvious: initialize it to null.



reply via email to

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