2019-10-09 10:01:10

by Colin King

[permalink] [raw]
Subject: [PATCH][next] drm/i915/selftests: fix null pointer dereference on pointer data

From: Colin Ian King <[email protected]>

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 <[email protected]>
---
drivers/gpu/drm/i915/gem/selftests/i915_gem_context.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/gpu/drm/i915/gem/selftests/i915_gem_context.c b/drivers/gpu/drm/i915/gem/selftests/i915_gem_context.c
index fb58c0919ea1..e5c235051ae5 100644
--- a/drivers/gpu/drm/i915/gem/selftests/i915_gem_context.c
+++ b/drivers/gpu/drm/i915/gem/selftests/i915_gem_context.c
@@ -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 */
--
2.20.1


2019-10-09 10:18:15

by Chris Wilson

[permalink] [raw]
Subject: Re: [PATCH][next] drm/i915/selftests: fix null pointer dereference on pointer data

Quoting Colin King (2019-10-09 11:00:24)
> From: Colin Ian King <[email protected]>
>
> 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 <[email protected]>
Reviewed-by: Chris Wilson <[email protected]>
-Chris