On Thu, Oct 02, 2025 at 11:48:26AM +0300, Alexandr Sapozhnkiov wrote:
> From: Alexandr Sapozhnikov <[email protected]>

About the subject, this is not just a 5.10 kernel issue.
This code is the current code in our tip.
So this needs to target drm-tip branch, and then Cc stable
and perhaps a Fixes: tag.

> 
> In the drm_vma_node_allow function, kmalloc may 
> return NULL, in which case the file element will not be 
> added to the mmo->vma_node list. It would be good to 
> not ignore this event, but at least log an error message.
> 
> Found by Linux Verification Center (linuxtesting.org) with SVACE.
> 
> Signed-off-by: Alexandr Sapozhnikov <[email protected]>
> ---
>  drivers/gpu/drm/i915/gem/i915_gem_mman.c | 7 +++++--
>  1 file changed, 5 insertions(+), 2 deletions(-)
> 
> diff --git a/drivers/gpu/drm/i915/gem/i915_gem_mman.c 
> b/drivers/gpu/drm/i915/gem/i915_gem_mman.c
> index a2195e28b625..adaef8f09d59 100644
> --- a/drivers/gpu/drm/i915/gem/i915_gem_mman.c
> +++ b/drivers/gpu/drm/i915/gem/i915_gem_mman.c
> @@ -706,8 +706,11 @@ mmap_offset_attach(struct drm_i915_gem_object *obj,
>       mmo = insert_mmo(obj, mmo);
>       GEM_BUG_ON(lookup_mmo(obj, mmap_type) != mmo);
>  out:
> -     if (file)
> -             drm_vma_node_allow_once(&mmo->vma_node, file);
> +     if (file) {
> +             err = drm_vma_node_allow_once(&mmo->vma_node, file);
> +             if (err)

perhaps we also need to drm_vma_offset_remove here?
I mean... honest question, doubt here. Is there any further clean-up needed?

> +                     goto err;
> +     }
>       return mmo;
>  
>  err:
> -- 
> 2.43.0
> 

Reply via email to