Greeting's
Today's netdev/net-next kernel 5.16.0-rc7 failed to build on my powerpc box with below error
CC [M] drivers/net/ethernet/mellanox/mlx5/core/en_main.o
In file included from ./arch/powerpc/include/generated/asm/rwonce.h:1,
from ./include/linux/compiler.h:266,
from ./arch/powerpc/include/asm/cmpxchg.h:6,
from ./arch/powerpc/include/asm/atomic.h:11,
from ./include/linux/atomic.h:7,
from ./include/linux/refcount.h:95,
from ./include/net/act_api.h:9,
from ./include/net/tc_act/tc_gact.h:5,
from drivers/net/ethernet/mellanox/mlx5/core/en_main.c:33:
drivers/net/ethernet/mellanox/mlx5/core/en_main.c: In function ‘mlx5e_alloc_rq’:
./include/linux/rcupdate.h:412:36: error: dereferencing pointer to incomplete type ‘struct bpf_prog’
#define RCU_INITIALIZER(v) (typeof(*(v)) __force __rcu *)(v)
^~~~
./include/asm-generic/rwonce.h:55:33: note: in definition of macro ‘__WRITE_ONCE’
*(volatile typeof(x) *)&(x) = (val); \
^~~
./include/linux/rcupdate.h:854:3: note: in expansion of macro ‘WRITE_ONCE’
WRITE_ONCE(p, RCU_INITIALIZER(v)); \
^~~~~~~~~~
./include/linux/rcupdate.h:854:17: note: in expansion of macro ‘RCU_INITIALIZER’
WRITE_ONCE(p, RCU_INITIALIZER(v)); \
^~~~~~~~~~~~~~~
drivers/net/ethernet/mellanox/mlx5/core/en_main.c:569:2: note: in expansion of macro ‘RCU_INIT_POINTER’
RCU_INIT_POINTER(rq->xdp_prog, params->xdp_prog);
^~~~~~~~~~~~~~~~
make[5]: *** [scripts/Makefile.build:287: drivers/net/ethernet/mellanox/mlx5/core/en_main.o] Error 1
--
Regard's
Abdul Haleem
IBM Linux Technology Center
On Mon, 3 Jan 2022 19:10:01 +0530 Abdul Haleem wrote:
> Greeting's
>
> Today's netdev/net-next kernel 5.16.0-rc7 failed to build on my powerpc box with below error
>
> CC [M] drivers/net/ethernet/mellanox/mlx5/core/en_main.o
> In file included from ./arch/powerpc/include/generated/asm/rwonce.h:1,
> from ./include/linux/compiler.h:266,
> from ./arch/powerpc/include/asm/cmpxchg.h:6,
> from ./arch/powerpc/include/asm/atomic.h:11,
> from ./include/linux/atomic.h:7,
> from ./include/linux/refcount.h:95,
> from ./include/net/act_api.h:9,
> from ./include/net/tc_act/tc_gact.h:5,
> from drivers/net/ethernet/mellanox/mlx5/core/en_main.c:33:
> drivers/net/ethernet/mellanox/mlx5/core/en_main.c: In function ‘mlx5e_alloc_rq’:
> ./include/linux/rcupdate.h:412:36: error: dereferencing pointer to incomplete type ‘struct bpf_prog’
> #define RCU_INITIALIZER(v) (typeof(*(v)) __force __rcu *)(v)
> ^~~~
> ./include/asm-generic/rwonce.h:55:33: note: in definition of macro ‘__WRITE_ONCE’
> *(volatile typeof(x) *)&(x) = (val); \
> ^~~
> ./include/linux/rcupdate.h:854:3: note: in expansion of macro ‘WRITE_ONCE’
> WRITE_ONCE(p, RCU_INITIALIZER(v)); \
> ^~~~~~~~~~
> ./include/linux/rcupdate.h:854:17: note: in expansion of macro ‘RCU_INITIALIZER’
> WRITE_ONCE(p, RCU_INITIALIZER(v)); \
> ^~~~~~~~~~~~~~~
> drivers/net/ethernet/mellanox/mlx5/core/en_main.c:569:2: note: in expansion of macro ‘RCU_INIT_POINTER’
> RCU_INIT_POINTER(rq->xdp_prog, params->xdp_prog);
> ^~~~~~~~~~~~~~~~
> make[5]: *** [scripts/Makefile.build:287: drivers/net/ethernet/mellanox/mlx5/core/en_main.o] Error 1
>
I can repro a powerpc build failure with ice, but I don't see anything
wrong in mlx5 in an allmodconfig. The config you attached is invalid:
.config:709:warning: symbol value 'm' invalid for HOTPLUG_PCI_SHPC
.config:892:warning: symbol value 'm' invalid for NF_CT_PROTO_GRE
.config:919:warning: symbol value 'm' invalid for NF_NAT_REDIRECT
.config:922:warning: symbol value 'm' invalid for NF_TABLES_INET
.config:1099:warning: symbol value 'm' invalid for NF_TABLES_IPV4
.config:1104:warning: symbol value 'm' invalid for NF_TABLES_ARP
.config:1146:warning: symbol value 'm' invalid for NF_TABLES_IPV6
.config:1537:warning: symbol value 'm' invalid for NET_DEVLINK
.config:2721:warning: symbol value 'm' invalid for ISDN_CAPI
.config:3066:warning: symbol value 'm' invalid for HW_RANDOM_TPM
.config:3589:warning: symbol value 'm' invalid for LIRC
.config:5356:warning: symbol value 'm' invalid for FS_ENCRYPTION
I'll send a fix based on your error messages, it does look like
en_main.c should include filter.h.