On Mon, Jun 24, 2019 at 4:15 AM Fred Neubauer <fred.neuba...@gmail.com> wrote: > > Hi, > > When compiling the openvswitch datapath module with "make rpm-fedora-kmod" > on the latest CentOS kernels that have the vulnerability fixes > for Zombieload / MDS, it fails with the following errors: > > make -C /lib/modules/3.10.0-957.21.3.el7.x86_64/build > > M=/home/neubauer/git/ovs/rpm/rpmbuild/BUILD/openvswitch-2.11.90/_3.10.0-957.21.3.el7.x86_64/datapath/linux > modules > make[2]: Entering directory `/usr/src/kernels/3.10.0-957.21.3.el7.x86_64' > CC [M] > > /home/neubauer/git/ovs/rpm/rpmbuild/BUILD/openvswitch-2.11.90/_3.10.0-957.21.3.el7.x86_64/datapath/linux/actions.o > CC [M] > > /home/neubauer/git/ovs/rpm/rpmbuild/BUILD/openvswitch-2.11.90/_3.10.0-957.21.3.el7.x86_64/datapath/linux/conntrack.o > In file included from ./arch/x86/include/asm/irqflags.h:8:0, > from include/linux/irqflags.h:15, > from ./arch/x86/include/asm/processor.h:30, > from ./arch/x86/include/asm/cpufeature.h:7, > from ./arch/x86/include/asm/thread_info.h:22, > from include/linux/thread_info.h:66, > from include/linux/preempt.h:9, > from include/linux/spinlock.h:50, > from include/linux/mm_types.h:8, > from include/linux/kmemcheck.h:4, > from include/linux/skbuff.h:18, > from > /home/neubauer/git/ovs/rpm/rpmbuild/BUILD/openvswitch-2.11.90/_3.10.0-957.21.3.el7.x86_64/../datapath/linux/compat/include/linux/skbuff.h:17, > from > /home/neubauer/git/ovs/rpm/rpmbuild/BUILD/openvswitch-2.11.90/_3.10.0-957.21.3.el7.x86_64/datapath/linux/actions.c:21: > /home/neubauer/git/ovs/rpm/rpmbuild/BUILD/openvswitch-2.11.90/_3.10.0-957.21.3.el7.x86_64/../datapath/linux/compat/include/linux/static_key.h: > In function 'rpl_static_key_count': > /home/neubauer/git/ovs/rpm/rpmbuild/BUILD/openvswitch-2.11.90/_3.10.0-957.21.3.el7.x86_64/../datapath/linux/compat/include/linux/static_key.h:39:2: > error: implicit declaration of function 'atomic_read' > [-Werror=implicit-function-declaration] > return atomic_read(&key->enabled); > ^ > In file included from include/linux/atomic.h:4:0, > from ./arch/x86/include/asm/thread_info.h:23, > from include/linux/thread_info.h:66, > from include/linux/preempt.h:9, > from include/linux/spinlock.h:50, > from include/linux/mm_types.h:8, > from include/linux/kmemcheck.h:4, > from include/linux/skbuff.h:18, > from > /home/neubauer/git/ovs/rpm/rpmbuild/BUILD/openvswitch-2.11.90/_3.10.0-957.21.3.el7.x86_64/../datapath/linux/compat/include/linux/skbuff.h:17, > from > /home/neubauer/git/ovs/rpm/rpmbuild/BUILD/openvswitch-2.11.90/_3.10.0-957.21.3.el7.x86_64/datapath/linux/actions.c:21: > ./arch/x86/include/asm/atomic.h: At top level: > ./arch/x86/include/asm/atomic.h:23:28: error: static declaration of > 'atomic_read' follows non-static declaration > static __always_inline int atomic_read(const atomic_t *v) > ^
Hi Fred, Looks like ovs compat datapath code is broken with the kernel backport on CentOS 7.6. Can you help to check if the following diff may resolve your issue? diff --git a/datapath/linux/compat/include/linux/static_key.h b/datapath/linux/compat/include/linux/static_key.h index 01c6a93f07fe..7e43a49e84f1 100644 --- a/datapath/linux/compat/include/linux/static_key.h +++ b/datapath/linux/compat/include/linux/static_key.h @@ -1,6 +1,7 @@ #ifndef _STATIC_KEY_WRAPPER_H #define _STATIC_KEY_WRAPPER_H +#include <linux/atomic.h> #include_next <linux/static_key.h> #ifndef HAVE_UPSTREAM_STATIC_KEY /* Thanks, -Yi-Hung > As wel are dependent on the STT portion of the module we cannot upgrade > until we can compile the custom openvswitch module, has anyone else run > into this error? > > Regards, > Fred Neubauer > _______________________________________________ > dev mailing list > d...@openvswitch.org > https://mail.openvswitch.org/mailman/listinfo/ovs-dev _______________________________________________ dev mailing list d...@openvswitch.org https://mail.openvswitch.org/mailman/listinfo/ovs-dev