linux/pkt_cls.h indirectly includes linux/stddef.h, which may define __always_inline when using Linux kernel headers 4.6 or later.
netinet/in.h indirectly includes sys/cdefs.h, which before Glibc 2.24 would unconditionally define __always_inline. This combination of headers causes compilation failure. Resolve the issue by placing the netinet/in.h include above linux/pkt_cls.h. Sourceware-BZ: #20215. Fixes: f98e418fbdb6 ("tc: Add tc flower functions") Signed-off-by: Joe Stringer <j...@ovn.org> --- lib/tc.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/tc.h b/lib/tc.h index a472b998f638..61188dd43ec3 100644 --- a/lib/tc.h +++ b/lib/tc.h @@ -18,10 +18,10 @@ #ifndef TC_H #define TC_H 1 +#include <netinet/in.h> /* Must happen before linux/pkt_cls.h - Glibc #20215 */ #include <linux/pkt_cls.h> #include <linux/pkt_sched.h> #include <linux/rtnetlink.h> -#include <netinet/in.h> #include "lib/netlink-socket.h" #include "odp-netlink.h" #include "openvswitch/ofpbuf.h" -- 2.11.1 _______________________________________________ dev mailing list d...@openvswitch.org https://mail.openvswitch.org/mailman/listinfo/ovs-dev