diff options
Diffstat (limited to 'include/linux/rcutiny.h')
-rw-r--r-- | include/linux/rcutiny.h | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/include/linux/rcutiny.h b/include/linux/rcutiny.h index adb5e5a38cae..4e56a9c69a35 100644 --- a/include/linux/rcutiny.h +++ b/include/linux/rcutiny.h | |||
@@ -87,17 +87,24 @@ static inline void kfree_call_rcu(struct rcu_head *head, | |||
87 | 87 | ||
88 | #ifdef CONFIG_TINY_RCU | 88 | #ifdef CONFIG_TINY_RCU |
89 | 89 | ||
90 | static inline int rcu_needs_cpu(int cpu) | 90 | static inline void rcu_preempt_note_context_switch(void) |
91 | { | 91 | { |
92 | } | ||
93 | |||
94 | static inline int rcu_needs_cpu(int cpu, unsigned long *delta_jiffies) | ||
95 | { | ||
96 | *delta_jiffies = ULONG_MAX; | ||
92 | return 0; | 97 | return 0; |
93 | } | 98 | } |
94 | 99 | ||
95 | #else /* #ifdef CONFIG_TINY_RCU */ | 100 | #else /* #ifdef CONFIG_TINY_RCU */ |
96 | 101 | ||
102 | void rcu_preempt_note_context_switch(void); | ||
97 | int rcu_preempt_needs_cpu(void); | 103 | int rcu_preempt_needs_cpu(void); |
98 | 104 | ||
99 | static inline int rcu_needs_cpu(int cpu) | 105 | static inline int rcu_needs_cpu(int cpu, unsigned long *delta_jiffies) |
100 | { | 106 | { |
107 | *delta_jiffies = ULONG_MAX; | ||
101 | return rcu_preempt_needs_cpu(); | 108 | return rcu_preempt_needs_cpu(); |
102 | } | 109 | } |
103 | 110 | ||
@@ -106,6 +113,7 @@ static inline int rcu_needs_cpu(int cpu) | |||
106 | static inline void rcu_note_context_switch(int cpu) | 113 | static inline void rcu_note_context_switch(int cpu) |
107 | { | 114 | { |
108 | rcu_sched_qs(cpu); | 115 | rcu_sched_qs(cpu); |
116 | rcu_preempt_note_context_switch(); | ||
109 | } | 117 | } |
110 | 118 | ||
111 | /* | 119 | /* |