diff options
| author | Ingo Molnar <mingo@kernel.org> | 2016-02-17 10:37:36 +0100 |
|---|---|---|
| committer | Ingo Molnar <mingo@kernel.org> | 2016-02-17 10:37:36 +0100 |
| commit | 9109dc97b0155e500cdf3bcd91507bc24defefc1 (patch) | |
| tree | 5d721cbfeb3576dc6969093ab04f17666737b6a4 /kernel/events | |
| parent | perf/x86: Move perf_event.h to its new home (diff) | |
| parent | perf/core: Plug potential memory leak in CPU_UP_PREPARE (diff) | |
| download | linux-9109dc97b0155e500cdf3bcd91507bc24defefc1.tar.gz linux-9109dc97b0155e500cdf3bcd91507bc24defefc1.zip | |
Merge branch 'perf/urgent' into perf/core, to queue up dependent patch
Signed-off-by: Ingo Molnar <mingo@kernel.org>
Diffstat (limited to 'kernel/events')
| -rw-r--r-- | kernel/events/core.c | 4 |
1 files changed, 1 insertions, 3 deletions
diff --git a/kernel/events/core.c b/kernel/events/core.c index 5946460b2425..0d58522103cd 100644 --- a/kernel/events/core.c +++ b/kernel/events/core.c @@ -9206,7 +9206,7 @@ static void perf_event_init_cpu(int cpu) struct swevent_htable *swhash = &per_cpu(swevent_htable, cpu); mutex_lock(&swhash->hlist_mutex); - if (swhash->hlist_refcount > 0) { + if (swhash->hlist_refcount > 0 && !swevent_hlist_deref(swhash)) { struct swevent_hlist *hlist; hlist = kzalloc_node(sizeof(*hlist), GFP_KERNEL, cpu_to_node(cpu)); @@ -9282,11 +9282,9 @@ perf_cpu_notify(struct notifier_block *self, unsigned long action, void *hcpu) switch (action & ~CPU_TASKS_FROZEN) { case CPU_UP_PREPARE: - case CPU_DOWN_FAILED: perf_event_init_cpu(cpu); break; - case CPU_UP_CANCELED: case CPU_DOWN_PREPARE: perf_event_exit_cpu(cpu); break; |
