Andrew Scull | b4b6d4a | 2019-01-02 15:54:55 +0000 | [diff] [blame] | 1 | /* SPDX-License-Identifier: GPL-2.0 */ |
| 2 | #define DECLARE_PER_CPU(type, val) extern type val |
| 3 | #define DEFINE_PER_CPU(type, val) type val |
| 4 | |
| 5 | #define __get_cpu_var(var) var |
| 6 | #define this_cpu_ptr(var) var |
| 7 | #define this_cpu_read(var) var |
| 8 | #define this_cpu_xchg(var, val) uatomic_xchg(&var, val) |
| 9 | #define this_cpu_cmpxchg(var, old, new) uatomic_cmpxchg(&var, old, new) |
| 10 | #define per_cpu_ptr(ptr, cpu) ({ (void)(cpu); (ptr); }) |
| 11 | #define per_cpu(var, cpu) (*per_cpu_ptr(&(var), cpu)) |