drm/i915/selftests: fix null pointer dereference on pointer data
authorColin Ian King <colin.king@canonical.com>
Wed, 9 Oct 2019 10:00:24 +0000 (11:00 +0100)
committerChris Wilson <chris@chris-wilson.co.uk>
Wed, 9 Oct 2019 10:16:14 +0000 (11:16 +0100)
In the case where data fails to be allocated the error exit path is
via label 'out' where data is dereferenced in a for-loop.  Fix this
by exiting via the label 'out_file' instead to avoid the null pointer
dereference.

Addresses-Coverity: ("Dereference after null check")
Fixes: 50d16d44cce4 ("drm/i915/selftests: Exercise context switching in parallel")
Signed-off-by: Colin Ian King <colin.king@canonical.com>
Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk>
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Link: https://patchwork.freedesktop.org/patch/msgid/20191009100024.23077-1-colin.king@canonical.com
drivers/gpu/drm/i915/gem/selftests/i915_gem_context.c

index fb58c0919ea1cd33523e3dc0dc622d99a879a533..e5c235051ae55b06f3fb97cf98581d0fd7d405a1 100644 (file)
@@ -263,7 +263,7 @@ static int live_parallel_switch(void *arg)
        if (!data) {
                i915_gem_context_unlock_engines(ctx);
                err = -ENOMEM;
-               goto out;
+               goto out_file;
        }
 
        m = 0; /* Use the first context as our template for the engines */