diff options
author | Dmitry Torokhov <dmitry.torokhov@gmail.com> | 2008-04-01 00:22:26 -0400 |
---|---|---|
committer | Dmitry Torokhov <dmitry.torokhov@gmail.com> | 2008-04-01 00:22:26 -0400 |
commit | 399f486286f44d55c4fff0e9cc5d712f2b443489 (patch) | |
tree | 0c2820b3e04232eaa96f08c1057b87728fb3e7a4 /include/linux/rcupreempt.h | |
parent | 481419ec9fbdf3f4ec5389c7e91a81b4a7ebee8d (diff) | |
parent | a9edadbf790d72adf6ebed476cb5caf7743e7e4a (diff) |
Merge master.kernel.org:/pub/scm/linux/kernel/git/torvalds/linux-2.6 into for-linus
Diffstat (limited to 'include/linux/rcupreempt.h')
-rw-r--r-- | include/linux/rcupreempt.h | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/include/linux/rcupreempt.h b/include/linux/rcupreempt.h index 01152ed532c8..d038aa6e5ee1 100644 --- a/include/linux/rcupreempt.h +++ b/include/linux/rcupreempt.h | |||
@@ -87,15 +87,15 @@ DECLARE_PER_CPU(long, dynticks_progress_counter); | |||
87 | 87 | ||
88 | static inline void rcu_enter_nohz(void) | 88 | static inline void rcu_enter_nohz(void) |
89 | { | 89 | { |
90 | smp_mb(); /* CPUs seeing ++ must see prior RCU read-side crit sects */ | ||
90 | __get_cpu_var(dynticks_progress_counter)++; | 91 | __get_cpu_var(dynticks_progress_counter)++; |
91 | WARN_ON(__get_cpu_var(dynticks_progress_counter) & 0x1); | 92 | WARN_ON(__get_cpu_var(dynticks_progress_counter) & 0x1); |
92 | mb(); | ||
93 | } | 93 | } |
94 | 94 | ||
95 | static inline void rcu_exit_nohz(void) | 95 | static inline void rcu_exit_nohz(void) |
96 | { | 96 | { |
97 | mb(); | ||
98 | __get_cpu_var(dynticks_progress_counter)++; | 97 | __get_cpu_var(dynticks_progress_counter)++; |
98 | smp_mb(); /* CPUs seeing ++ must see later RCU read-side crit sects */ | ||
99 | WARN_ON(!(__get_cpu_var(dynticks_progress_counter) & 0x1)); | 99 | WARN_ON(!(__get_cpu_var(dynticks_progress_counter) & 0x1)); |
100 | } | 100 | } |
101 | 101 | ||