From: Alexandr Sapozhnikov <alsp...@gmail.com>

Return value of function 'drm_vma_node_allow', called 
at i915_gem_mman.c:670, is not checked, but it is usually 
checked for this function

Found by Linux Verification Center (linuxtesting.org) with SVACE.
Signed-off-by: Alexandr Sapozhnikov <alsp...@gmail.com>

---
 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)
+                       goto err;
+       }
        return mmo;
 
 err:
-- 
2.43.0

Reply via email to