perf: Fix NULL deref
authorPeter Zijlstra <[email protected]>
Wed, 27 Jan 2016 20:59:04 +0000 (21:59 +0100)
committerIngo Molnar <[email protected]>
Fri, 29 Jan 2016 07:35:24 +0000 (08:35 +0100)
commit828b6f0e26170938d617e99a17177453be4d77a3
treea2e8b41d38805adf84d906bfca4d959d84ba6bee
parent8f04b8536f0c94f8999b65cd1c6c7523116a00ae
perf: Fix NULL deref

Dan reported:

  1229                  if (ctx->task == TASK_TOMBSTONE ||
  1230                      !atomic_inc_not_zero(&ctx->refcount)) {
  1231                          raw_spin_unlock(&ctx->lock);
  1232                          ctx = NULL;
                                ^^^^^^^^^^
ctx is NULL.

  1233                  }
  1234
  1235                  WARN_ON_ONCE(ctx->task != task);
                                     ^^^^^^^^^^^^^^^^^
The patch adds a NULL dereference.

Reported-by: Dan Carpenter <[email protected]>
Signed-off-by: Peter Zijlstra (Intel) <[email protected]>
Cc: Arnaldo Carvalho de Melo <[email protected]>
Cc: David Ahern <[email protected]>
Cc: Jiri Olsa <[email protected]>
Cc: Linus Torvalds <[email protected]>
Cc: Namhyung Kim <[email protected]>
Cc: Peter Zijlstra <[email protected]>
Cc: Stephane Eranian <[email protected]>
Cc: Thomas Gleixner <[email protected]>
Cc: Vince Weaver <[email protected]>
Fixes: 63b6da39bb38 ("perf: Fix perf_event_exit_task() race")
Signed-off-by: Ingo Molnar <[email protected]>
kernel/events/core.c