From: Jesse Gross Date: Tue, 8 Feb 2011 01:22:58 +0000 (-0800) Subject: datapath: Check for backported rcu_read_lock_held. X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=cf6cb3a2ab31a16b01e18e1db2d601e92f2a405e;p=openvswitch datapath: Check for backported rcu_read_lock_held. New versions of Xen backport this function. Signed-off-by: Jesse Gross Acked-by: Ben Pfaff --- diff --git a/acinclude.m4 b/acinclude.m4 index fed950bd..6a829d59 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 f96299f4..99459ea7 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;