diff --git a/[refs] b/[refs] index 9a8f300f5f08..daf186347666 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: cde8e88498c8de69271fcb6d4dd974979368fa67 +refs/heads/master: 0c67b40872326a5340cab51d79a192a5fbaeb484 diff --git a/trunk/kernel/perf_event.c b/trunk/kernel/perf_event.c index bc46bff69620..440f9ca067b2 100644 --- a/trunk/kernel/perf_event.c +++ b/trunk/kernel/perf_event.c @@ -2150,7 +2150,9 @@ static void free_event(struct perf_event *event) if (event->destroy) event->destroy(event); - put_ctx(event->ctx); + if (event->ctx) + put_ctx(event->ctx); + call_rcu(&event->rcu_head, free_event_rcu); }