On latest RT kernels we are getting following errors while compiling OVS:

        In file included from 
openvswitch/datapath/linux/compat/include/linux/if_vlan.h:6:0,
                         from openvswitch/datapath/linux/actions.c:29:
        lng.git/include/linux/if_vlan.h: In function vlan_insert_tag:
        lng.git/include/linux/if_vlan.h:197:5: error: struct sk_buff has no 
member named mac
        In file included from openvswitch/datapath/linux/../flow.h:34:0,
                         from openvswitch/datapath/linux/../datapath.h:31,
                         from openvswitch/datapath/linux/actions.c:36:
        lng.git/include/net/inet_ecn.h: In function INET_ECN_set_ce:
        lng.git/include/net/inet_ecn.h:137:10: error: struct sk_buff has no 
member named nh
        lng.git/include/net/inet_ecn.h:142:10: error: struct sk_buff has no 
member named nh
        openvswitch/datapath/linux/actions.c: In function __pop_vlan_tci:
        openvswitch/datapath/linux/actions.c:72:5: error: struct sk_buff has no 
member named mac
        make[7]: *** [openvswitch/datapath/linux/actions.o] Error 1
        make[6]: *** [_module_openvswitch/datapath/linux] Error 2

This happened because RT kernel has used raw keyword inside skbuff.h, which was
used to identify some older kernels stuff in OVS.

Lets make the search pattern a bit stronger by searching "*raw;" instead of
"raw".

Signed-off-by: Viresh Kumar <viresh.ku...@linaro.org>
---
V1->V2:
- Instead of removing OVS_GREP_IFELSE() for searching raw, make grep pattern
  stronger.

 acinclude.m4 | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/acinclude.m4 b/acinclude.m4
index 071fe54..57302b0 100644
--- a/acinclude.m4
+++ b/acinclude.m4
@@ -240,7 +240,7 @@ AC_DEFUN([OVS_CHECK_LINUX_COMPAT], [
   # quoting rules.
   OVS_GREP_IFELSE([$KSRC/include/linux/skbuff.h], [[[^@]]proto_data_valid],
                   [OVS_DEFINE([HAVE_PROTO_DATA_VALID])])
-  OVS_GREP_IFELSE([$KSRC/include/linux/skbuff.h], [raw],
+  OVS_GREP_IFELSE([$KSRC/include/linux/skbuff.h], [\*raw\;],
                   [OVS_DEFINE([HAVE_MAC_RAW])])
   OVS_GREP_IFELSE([$KSRC/include/linux/skbuff.h], [skb_dst(],
                   [OVS_DEFINE([HAVE_SKB_DST_ACCESSOR_FUNCS])])
-- 
1.7.12.rc2.18.g61b472e

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

Reply via email to