Borislav Petkov | a7b480e | 2010-01-22 16:01:03 +0100 | [diff] [blame] | 1 | #include <linux/smp.h> |
2 | #include <linux/module.h> | ||||
3 | |||||
4 | static void __wbinvd(void *dummy) | ||||
5 | { | ||||
6 | wbinvd(); | ||||
7 | } | ||||
8 | |||||
9 | void wbinvd_on_cpu(int cpu) | ||||
10 | { | ||||
11 | smp_call_function_single(cpu, __wbinvd, NULL, 1); | ||||
12 | } | ||||
13 | EXPORT_SYMBOL(wbinvd_on_cpu); | ||||
14 | |||||
15 | int wbinvd_on_all_cpus(void) | ||||
16 | { | ||||
17 | return on_each_cpu(__wbinvd, NULL, 1); | ||||
18 | } | ||||
19 | EXPORT_SYMBOL(wbinvd_on_all_cpus); |