| 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); | ||||