| Date | Tue, 18 Apr 2017 19:05:02 +0200 | From | Thomas Gleixner <> | Subject | [patch V2 20/24] perf/core: Remove redundant get_online_cpus() |
| |
SyS_perf_event_open() calls get_online_cpus() and eventually invokes swevent_hlist_get() which does it again.
All callchains leading to swevent_hlist_get() originate from SyS_perf_event_open() so the extra protection is redundant.
Remove it.
Signed-off-by: Thomas Gleixner <tglx@linutronix.de> Cc: Peter Zijlstra <peterz@infradead.org> --- kernel/events/core.c | 5 ----- 1 file changed, 5 deletions(-)
--- a/kernel/events/core.c +++ b/kernel/events/core.c @@ -7592,7 +7592,6 @@ static int swevent_hlist_get(void) { int err, cpu, failed_cpu; - get_online_cpus(); for_each_possible_cpu(cpu) { err = swevent_hlist_get_cpu(cpu); if (err) { @@ -7600,8 +7599,6 @@ static int swevent_hlist_get(void) goto fail; } } - put_online_cpus(); - return 0; fail: for_each_possible_cpu(cpu) { @@ -7609,8 +7606,6 @@ static int swevent_hlist_get(void) break; swevent_hlist_put_cpu(cpu); } - - put_online_cpus(); return err; }
|