diff options
Diffstat (limited to 'include/linux/srcu.h')
-rw-r--r-- | include/linux/srcu.h | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/include/linux/srcu.h b/include/linux/srcu.h index bdeb4567b71e..f5f80c5643ac 100644 --- a/include/linux/srcu.h +++ b/include/linux/srcu.h | |||
@@ -215,8 +215,11 @@ static inline int srcu_read_lock_held(struct srcu_struct *sp) | |||
215 | */ | 215 | */ |
216 | static inline int srcu_read_lock(struct srcu_struct *sp) __acquires(sp) | 216 | static inline int srcu_read_lock(struct srcu_struct *sp) __acquires(sp) |
217 | { | 217 | { |
218 | int retval = __srcu_read_lock(sp); | 218 | int retval; |
219 | 219 | ||
220 | preempt_disable(); | ||
221 | retval = __srcu_read_lock(sp); | ||
222 | preempt_enable(); | ||
220 | rcu_lock_acquire(&(sp)->dep_map); | 223 | rcu_lock_acquire(&(sp)->dep_map); |
221 | return retval; | 224 | return retval; |
222 | } | 225 | } |