]> www.infradead.org Git - users/dwmw2/linux.git/commitdiff
drm/i915/selftests: avoid using uninitialized context
authorKrzysztof Karas <krzysztof.karas@intel.com>
Thu, 30 Jan 2025 09:19:31 +0000 (09:19 +0000)
committerRodrigo Vivi <rodrigo.vivi@intel.com>
Mon, 10 Feb 2025 16:39:17 +0000 (11:39 -0500)
There is an error path in igt_ppgtt_alloc(), which leads
to ww object being passed down to i915_gem_ww_ctx_fini() without
initialization. Correct that by only putting ppgtt->vm and
returning early.

Fixes: 480ae79537b2 ("drm/i915/selftests: Prepare gtt tests for obj->mm.lock removal")
Signed-off-by: Krzysztof Karas <krzysztof.karas@intel.com>
Reviewed-by: Mikolaj Wasiak <mikolaj.wasiak@intel.com>
Reviewed-by: Andi Shyti <andi.shyti@linux.intel.com>
Signed-off-by: Andi Shyti <andi.shyti@linux.intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/iuaonpjc3rywmvhna6umjlvzilocn2uqsrxfxfob24e2taocbi@lkaivvfp4777
(cherry picked from commit 8d8334632ea62424233ac6529712868241d0f8df)
Signed-off-by: Rodrigo Vivi <rodrigo.vivi@intel.com>
drivers/gpu/drm/i915/selftests/i915_gem_gtt.c

index 5c397a2df70e28ce2e816b77b9cc7ba697f549c5..5d27e1c733c52730752068c348eb77428dc93ff9 100644 (file)
@@ -168,7 +168,7 @@ static int igt_ppgtt_alloc(void *arg)
                return PTR_ERR(ppgtt);
 
        if (!ppgtt->vm.allocate_va_range)
-               goto err_ppgtt_cleanup;
+               goto ppgtt_vm_put;
 
        /*
         * While we only allocate the page tables here and so we could
@@ -236,7 +236,7 @@ err_ppgtt_cleanup:
                        goto retry;
        }
        i915_gem_ww_ctx_fini(&ww);
-
+ppgtt_vm_put:
        i915_vm_put(&ppgtt->vm);
        return err;
 }