Re: [PATCH 1/1] vhost_task: Fix vhost_task_create return value

From: Michael S. Tsirkin
Date: Thu Mar 23 2023 - 03:38:32 EST


On Wed, Mar 22, 2023 at 01:56:05PM -0500, Mike Christie wrote:
> vhost_task_create is supposed to return the vhost_task or NULL on
> failure. This fixes it to return the correct value when the allocation
> of the struct fails.
>
> Fixes: 77feab3c4156 ("vhost_task: Allow vhost layer to use copy_process") # mainline only
> Reported-by: syzbot+6b27b2d2aba1c80cc13b@xxxxxxxxxxxxxxxxxxxxxxxxx
> Signed-off-by: Mike Christie <michael.christie@xxxxxxxxxx>

Acked-by: Michael S. Tsirkin <mst@xxxxxxxxxx>

The affected patch is not upstream yet, right?
I don't know if the tree in question allows rebases - linux-next
does. So ideally it would be squashed to avoid issues during bisect.
Still it's error path so I guess not a tragedy even without squashing.

> ---
> kernel/vhost_task.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/kernel/vhost_task.c b/kernel/vhost_task.c
> index 4b8aff160640..b7cbd66f889e 100644
> --- a/kernel/vhost_task.c
> +++ b/kernel/vhost_task.c
> @@ -88,7 +88,7 @@ struct vhost_task *vhost_task_create(int (*fn)(void *), void *arg,
>
> vtsk = kzalloc(sizeof(*vtsk), GFP_KERNEL);
> if (!vtsk)
> - return ERR_PTR(-ENOMEM);
> + return NULL;
> init_completion(&vtsk->exited);
> vtsk->data = arg;
> vtsk->fn = fn;
> --
> 2.25.1