RHEL 6.6 kernel percpu APIs are broken, so following patch is using OVS
backported version.

Reported-by: Wang Sheng-Hui <shh...@gmail.com>
Signed-off-by: Pravin B Shelar <pshe...@nicira.com>
---
 datapath/linux/compat/include/linux/percpu.h |    6 ++++++
 datapath/linux/compat/include/linux/skbuff.h |    2 +-
 2 files changed, 7 insertions(+), 1 deletions(-)

diff --git a/datapath/linux/compat/include/linux/percpu.h 
b/datapath/linux/compat/include/linux/percpu.h
index e0941f7..4ec64cf 100644
--- a/datapath/linux/compat/include/linux/percpu.h
+++ b/datapath/linux/compat/include/linux/percpu.h
@@ -7,6 +7,12 @@
 #define this_cpu_ptr(ptr) per_cpu_ptr(ptr, smp_processor_id())
 #endif
 
+#ifdef HAVE_RHEL_OVS_HOOK
+#undef this_cpu_read
+#undef this_cpu_inc
+#undef this_cpu_dec
+#endif
+
 #if !defined this_cpu_read
 #define this_cpu_read(ptr) percpu_read(ptr)
 #endif
diff --git a/datapath/linux/compat/include/linux/skbuff.h 
b/datapath/linux/compat/include/linux/skbuff.h
index 7be0271..67a14b7 100644
--- a/datapath/linux/compat/include/linux/skbuff.h
+++ b/datapath/linux/compat/include/linux/skbuff.h
@@ -302,7 +302,7 @@ static inline void skb_clear_hash(struct sk_buff *skb)
 #ifdef HAVE_RXHASH
        skb->rxhash = 0;
 #endif
-#ifdef HAVE_L4_RXHASH
+#if defined(HAVE_L4_RXHASH) && !defined(HAVE_RHEL_OVS_HOOK)
        skb->l4_rxhash = 0;
 #endif
 }
-- 
1.7.1

_______________________________________________
dev mailing list
dev@openvswitch.org
http://openvswitch.org/mailman/listinfo/dev

Reply via email to