summaryrefslogtreecommitdiffstats
path: root/linux-2.6-rcu-netpoll.patch
diff options
context:
space:
mode:
Diffstat (limited to 'linux-2.6-rcu-netpoll.patch')
-rw-r--r--linux-2.6-rcu-netpoll.patch16
1 files changed, 16 insertions, 0 deletions
diff --git a/linux-2.6-rcu-netpoll.patch b/linux-2.6-rcu-netpoll.patch
new file mode 100644
index 000000000..540b39341
--- /dev/null
+++ b/linux-2.6-rcu-netpoll.patch
@@ -0,0 +1,16 @@
+
+diff --git a/include/linux/rcupdate.h b/include/linux/rcupdate.h
+index 9fbc54a..435c502 100644
+--- a/include/linux/rcupdate.h
++++ b/include/linux/rcupdate.h
+@@ -454,7 +454,7 @@ static inline notrace void rcu_read_unlock_sched_notrace(void)
+ * Makes rcu_dereference_check() do the dirty work.
+ */
+ #define rcu_dereference_bh(p) \
+- rcu_dereference_check(p, rcu_read_lock_bh_held())
++ rcu_dereference_check(p, rcu_read_lock_bh_held() || irqs_disabled())
+
+ /**
+ * rcu_dereference_sched - fetch RCU-protected pointer, checking for RCU-sched
+
+