[ovs-dev] [PATCH] datapath: Check for backported rcu_read_lock_held.

Jesse Gross jesse at nicira.com
Tue Feb 8 02:09:22 UTC 2011


New versions of Xen backport this function.

Signed-off-by: Jesse Gross <jesse at nicira.com>
---
 acinclude.m4                                       |    4 ++++
 .../linux-2.6/compat-2.6/include/linux/rcupdate.h  |    2 +-
 2 files changed, 5 insertions(+), 1 deletions(-)

diff --git a/acinclude.m4 b/acinclude.m4
index fed950b..6a829d5 100644
--- a/acinclude.m4
+++ b/acinclude.m4
@@ -168,6 +168,10 @@ AC_DEFUN([OVS_CHECK_LINUX26_COMPAT], [
   OVS_GREP_IFELSE([$KSRC26/include/linux/netdevice.h], [dev_disable_lro])
   OVS_GREP_IFELSE([$KSRC26/include/linux/netdevice.h], [dev_get_stats])
 
+  OVS_GREP_IFELSE([$KSRC26/include/linux/rcupdate.h], [rcu_read_lock_held], [],
+                  [OVS_GREP_IFELSE([$KSRC26/include/linux/rtnetlink.h],
+                                   [rcu_read_lock_held])])
+  
   # Check for the proto_data_valid member in struct sk_buff.  The [^@]
   # is necessary because some versions of this header remove the
   # member but retain the kerneldoc comment that describes it (which
diff --git a/datapath/linux-2.6/compat-2.6/include/linux/rcupdate.h b/datapath/linux-2.6/compat-2.6/include/linux/rcupdate.h
index f96299f..99459ea 100644
--- a/datapath/linux-2.6/compat-2.6/include/linux/rcupdate.h
+++ b/datapath/linux-2.6/compat-2.6/include/linux/rcupdate.h
@@ -11,7 +11,7 @@
 #define rcu_dereference_protected(p, c) (p)
 #endif
 
-#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,34)
+#ifndef HAVE_RCU_READ_LOCK_HELD
 static inline int rcu_read_lock_held(void)
 {
 	return 1;
-- 
1.7.1





More information about the dev mailing list