diff options
author | Yinghai Lu <yinghai@kernel.org> | 2008-12-26 21:05:06 -0800 |
---|---|---|
committer | Ingo Molnar <mingo@elte.hu> | 2008-12-27 11:58:48 +0100 |
commit | 01ea1ccaa24dea3552e103be13b7897211607a8b (patch) | |
tree | 38c1e83ba1e144113307a6763cdccaf3d6727869 | |
parent | e44aef58ecfbe061eb4c53b939bcc35fb1bee82d (diff) | |
download | kernel-crypto-01ea1ccaa24dea3552e103be13b7897211607a8b.tar.gz kernel-crypto-01ea1ccaa24dea3552e103be13b7897211607a8b.tar.xz kernel-crypto-01ea1ccaa24dea3552e103be13b7897211607a8b.zip |
perf_counter: more barrier in blank weak function
Impact: fix panic possible panic
Some versions of GCC inline the weak global function if it's empty.
Add a barrier() to work it around.
Signed-off-by: Yinghai Lu <yinghai@kernel.org>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
-rw-r--r-- | kernel/perf_counter.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/kernel/perf_counter.c b/kernel/perf_counter.c index d7a79f321b1..37f771691f9 100644 --- a/kernel/perf_counter.c +++ b/kernel/perf_counter.c @@ -45,8 +45,8 @@ hw_perf_counter_init(struct perf_counter *counter) } u64 __weak hw_perf_save_disable(void) { return 0; } -void __weak hw_perf_restore(u64 ctrl) { } -void __weak hw_perf_counter_setup(void) { } +void __weak hw_perf_restore(u64 ctrl) { barrier(); } +void __weak hw_perf_counter_setup(void) { barrier(); } static void list_add_counter(struct perf_counter *counter, struct perf_counter_context *ctx) |