diff options
| author | Rusty Russell <rusty@rustcorp.com.au> | 2002-08-12 20:27:45 -0700 |
|---|---|---|
| committer | Linus Torvalds <torvalds@home.transmeta.com> | 2002-08-12 20:27:45 -0700 |
| commit | 466e44bb94c10842f9e34b4692e01bd7210c2a89 (patch) | |
| tree | ea671e4c11b6c390a29ddcf192ac3f9916c64f2f /include/linux | |
| parent | b7b75b49fd49d23f2467091e57a6c5c08d275b03 (diff) | |
[PATCH] get_cpu_var patch
This makes introduces get_cpu_var()/put_cpu_var() which gets a
per-cpu variable and disables preemption, and renames the (unsafe
under preemption) "this_cpu()" macro to __get_cpu_var(). It also
deletes the redundant definitions in linux/smp.h.
Diffstat (limited to 'include/linux')
| -rw-r--r-- | include/linux/percpu.h | 4 | ||||
| -rw-r--r-- | include/linux/smp.h | 3 |
2 files changed, 3 insertions, 4 deletions
diff --git a/include/linux/percpu.h b/include/linux/percpu.h index 577df0fbe10d..deac3ced6a2c 100644 --- a/include/linux/percpu.h +++ b/include/linux/percpu.h @@ -8,7 +8,9 @@ #else #define __per_cpu_data #define per_cpu(var, cpu) var -#define this_cpu(var) var +#define __get_cpu_var(var) var #endif +#define get_cpu_var(var) ({ preempt_disable(); __get_cpu_var(var); }) +#define put_cpu_var(var) preempt_enable() #endif /* __LINUX_PERCPU_H */ diff --git a/include/linux/smp.h b/include/linux/smp.h index 9c6edbd8e6ec..6f6c6ed7a239 100644 --- a/include/linux/smp.h +++ b/include/linux/smp.h @@ -96,9 +96,6 @@ static inline void smp_send_reschedule_all(void) { } #define cpu_online_map 1 #define cpu_online(cpu) ({ cpu; 1; }) #define num_online_cpus() 1 -#define __per_cpu_data -#define per_cpu(var, cpu) var -#define this_cpu(var) var struct notifier_block; |
