Re: [PATCH v3] virtio_blk: Fix a slient kernel panic

From: Cornelia Huck
Date: Tue Jul 19 2016 - 08:22:54 EST


On Tue, 19 Jul 2016 12:32:42 +0800
Minfei Huang <mnfhuang@xxxxxxxxx> wrote:

> From: Minfei Huang <mnghuan@xxxxxxxxx>
>
> We do a lot of memory allocation in function init_vq, and don't handle
> the allocation failure properly. Then this function will return 0,
> although initialization fails due to lacking memory. At that moment,
> kernel will panic in guest machine, if virtio is used to drive disk.
>
> To fix this bug, we should take care of allocation failure, and return
> correct value to let caller know what happen.
>
> Tested-by: Chao Fan <fanc.fnst@xxxxxxxxxxxxxx>
> Signed-off-by: Minfei Huang <minfei.hmf@xxxxxxxxxxxxxxx>
> Signed-off-by: Minfei Huang <mnghuan@xxxxxxxxx>
> ---
> v2:
> - Remove useless initialisation to NULL
> v1:
> - Refactor the patch to make code more readable
> ---
> drivers/block/virtio_blk.c | 26 ++++++++------------------
> 1 file changed, 8 insertions(+), 18 deletions(-)

Your changes certainly make the function more compact.

Reviewed-by: Cornelia Huck <cornelia.huck@xxxxxxxxxx>