linux-next.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* linux-next: build failure after merge of the bpf-next tree
@ 2017-12-13  1:32 Stephen Rothwell
  2017-12-13  1:47 ` Alexei Starovoitov
  0 siblings, 1 reply; 103+ messages in thread
From: Stephen Rothwell @ 2017-12-13  1:32 UTC (permalink / raw)
  To: Daniel Borkmann, Alexei Starovoitov, Networking
  Cc: Linux-Next Mailing List, Linux Kernel Mailing List, Yonghong Song

Hi all,

After merging the bpf-next tree, today's linux-next build (arm
multi_v7_defconfig) failed like this:

kernel/events/core.o: In function `perf_ioctl':
core.c:(.text+0x98c4): undefined reference to `bpf_event_query_prog_array'

Caused by commit

  f371b304f12e ("bpf/tracing: allow user space to query prog array on the same tp")

CONFIG_BPF_SYSCALL is not set for this build.

I have used the bpf-next tree from next-20171212 for today.

-- 
Cheers,
Stephen Rothwell

^ permalink raw reply	[flat|nested] 103+ messages in thread
* linux-next: build failure after merge of the bpf-next tree
@ 2018-09-07  0:19 Stephen Rothwell
  2018-09-07  0:22 ` Alexei Starovoitov
  0 siblings, 1 reply; 103+ messages in thread
From: Stephen Rothwell @ 2018-09-07  0:19 UTC (permalink / raw)
  To: Daniel Borkmann, Alexei Starovoitov, Networking
  Cc: Linux-Next Mailing List, Linux Kernel Mailing List,
	Björn Töpel

[-- Attachment #1: Type: text/plain, Size: 618 bytes --]

Hi all,

After merging the bpf-next tree, today's linux-next build (powerpc
ppc64_defconfig) failed like this:

ERROR: ".xsk_reuseq_swap" [drivers/net/ethernet/intel/i40e/i40e.ko] undefined!
ERROR: ".xsk_reuseq_free" [drivers/net/ethernet/intel/i40e/i40e.ko] undefined!
ERROR: ".xsk_reuseq_prepare" [drivers/net/ethernet/intel/i40e/i40e.ko] undefined

Caused by commit

  9654bd10da60 ("i40e: clean zero-copy XDP Rx ring on shutdown/reset")

CONFIG_XDP_SOCKETS is not set for this build.

I have used the version of the bfp-next tree from next-20180906 for today.



-- 
Cheers,
Stephen Rothwell

[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 488 bytes --]

^ permalink raw reply	[flat|nested] 103+ messages in thread
* linux-next: build failure after merge of the bpf-next tree
@ 2018-10-03  3:18 Stephen Rothwell
  2018-10-03  5:29 ` Joe Stringer
  0 siblings, 1 reply; 103+ messages in thread
From: Stephen Rothwell @ 2018-10-03  3:18 UTC (permalink / raw)
  To: Daniel Borkmann, Alexei Starovoitov, Networking
  Cc: Linux-Next Mailing List, Linux Kernel Mailing List, Joe Stringer

[-- Attachment #1: Type: text/plain, Size: 484 bytes --]

Hi all,

After merging the bpf-next tree, today's linux-next build (x86_64
allmodconfig) failed like this:

x86_64-linux-gnu-ld: net/core/filter.o: in function `sk_lookup':
(.text+0x19219): undefined reference to `__udp6_lib_lookup'

Caused by commit

  6acc9b432e67 ("bpf: Add helper to retrieve socket in BPF")

I assume that __udp6_lib_lookup ended up in the IPv6 module.

I used the bpf-next tree from next-20181002 for today.



-- 
Cheers,
Stephen Rothwell

[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 488 bytes --]

^ permalink raw reply	[flat|nested] 103+ messages in thread
* linux-next: build failure after merge of the bpf-next tree
@ 2019-02-28  1:31 Stephen Rothwell
  2019-02-28  2:18 ` Alexei Starovoitov
  0 siblings, 1 reply; 103+ messages in thread
From: Stephen Rothwell @ 2019-02-28  1:31 UTC (permalink / raw)
  To: Daniel Borkmann, Alexei Starovoitov, Networking
  Cc: Linux Next Mailing List, Linux Kernel Mailing List

[-- Attachment #1: Type: text/plain, Size: 1535 bytes --]

Hi all,

After merging the bpf-next tree, today's linux-next build (arm
multi_v7_defconfig) failed like this:

kernel/sysctl.c:1238:13: error: 'sysctl_bpf_stats_enabled' undeclared here (not in a function); did you mean 'sysctl_base_table'?
   .data  = &sysctl_bpf_stats_enabled,
             ^~~~~~~~~~~~~~~~~~~~~~~~
             sysctl_base_table

Caused by commit

  492ecee892c2 ("bpf: enable program stats")

CONFIG_BPF=y
# CONFIG_BPF_SYSCALL is not set

I applied the following patch for today, but it should be done
properly. Also this patch leaves proc_dointvec_minmax_bpf_stats() as an
unused function.

From: Stephen Rothwell <sfr@canb.auug.org.au>
Date: Thu, 28 Feb 2019 12:26:58 +1100
Subject: [PATCH] bpf: hack to make "enable program stats" build

Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
---
 kernel/sysctl.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/kernel/sysctl.c b/kernel/sysctl.c
index 86e0771352f2..80a70f69cbd5 100644
--- a/kernel/sysctl.c
+++ b/kernel/sysctl.c
@@ -1232,7 +1232,6 @@ static struct ctl_table kern_table[] = {
 		.extra1		= &one,
 		.extra2		= &one,
 	},
-#endif
 	{
 		.procname	= "bpf_stats_enabled",
 		.data		= &sysctl_bpf_stats_enabled,
@@ -1242,6 +1241,7 @@ static struct ctl_table kern_table[] = {
 		.extra1		= &zero,
 		.extra2		= &one,
 	},
+#endif
 #if defined(CONFIG_TREE_RCU) || defined(CONFIG_PREEMPT_RCU)
 	{
 		.procname	= "panic_on_rcu_stall",
-- 
2.20.1

-- 
Cheers,
Stephen Rothwell

[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 488 bytes --]

^ permalink raw reply related	[flat|nested] 103+ messages in thread
* linux-next: build failure after merge of the bpf-next tree
@ 2019-04-18  1:57 Stephen Rothwell
  0 siblings, 0 replies; 103+ messages in thread
From: Stephen Rothwell @ 2019-04-18  1:57 UTC (permalink / raw)
  To: Daniel Borkmann, Alexei Starovoitov, Networking
  Cc: Linux Next Mailing List, Linux Kernel Mailing List,
	Magnus Karlsson

[-- Attachment #1: Type: text/plain, Size: 1526 bytes --]

Hi all,

After merging the bpf-next tree, today's linux-next build (powerpc perf)
failed like this:

In file included from xsk.c:32:
libbpf_util.h:49:3: error: #warning Architecture missing native barrier functions in libbpf_util.h. [-Werror=cpp]
 # warning Architecture missing native barrier functions in libbpf_util.h.
   ^~~~~~~
cc1: all warnings being treated as errors

Caused by commit

  b7e3a28019c9 ("libbpf: remove dependency on barrier.h in xsk.h")

I have applied the following patch for today ... please fix this.

From: Stephen Rothwell <sfr@canb.auug.org.au>
Date: Thu, 18 Apr 2019 11:54:56 +1000
Subject: [PATCH] suppress warning in tools/lib/bpf/libbpf_util.h

Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
---
 tools/lib/bpf/libbpf_util.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/tools/lib/bpf/libbpf_util.h b/tools/lib/bpf/libbpf_util.h
index 172b707e007b..a54eb2cdbdd6 100644
--- a/tools/lib/bpf/libbpf_util.h
+++ b/tools/lib/bpf/libbpf_util.h
@@ -46,7 +46,7 @@ do {				\
 # define libbpf_smp_mb() asm volatile("dmb ish" : : : "memory")
 # define libbpf_smp_rwmb() libbpf_smp_mb()
 #else
-# warning Architecture missing native barrier functions in libbpf_util.h.
+//# warning Architecture missing native barrier functions in libbpf_util.h.
 # define libbpf_smp_rmb() __sync_synchronize()
 # define libbpf_smp_wmb() __sync_synchronize()
 # define libbpf_smp_mb() __sync_synchronize()
-- 
2.20.1

-- 
Cheers,
Stephen Rothwell

[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 488 bytes --]

^ permalink raw reply related	[flat|nested] 103+ messages in thread
* linux-next: build failure after merge of the bpf-next tree
@ 2019-07-01  4:57 Stephen Rothwell
  2019-07-01  5:01 ` Stephen Rothwell
  0 siblings, 1 reply; 103+ messages in thread
From: Stephen Rothwell @ 2019-07-01  4:57 UTC (permalink / raw)
  To: Daniel Borkmann, Alexei Starovoitov, Networking, David Miller
  Cc: Linux Next Mailing List, Linux Kernel Mailing List,
	Maxim Mikityanskiy, Tal Gilboa, Saeed Mahameed

[-- Attachment #1: Type: text/plain, Size: 1989 bytes --]

Hi all,

After merging the bpf-next tree, today's linux-next build (x86_64
allmodconfig) failed like this:

drivers/net/ethernet/mellanox/mlx5/core/en_main.c:1605:5: error: conflicting types for 'mlx5e_open_cq'
 int mlx5e_open_cq(struct mlx5e_channel *c, struct dim_cq_moder moder,
     ^~~~~~~~~~~~~
In file included from drivers/net/ethernet/mellanox/mlx5/core/en_main.c:43:
drivers/net/ethernet/mellanox/mlx5/core/en.h:977:5: note: previous declaration of 'mlx5e_open_cq' was here
 int mlx5e_open_cq(struct mlx5e_channel *c, struct net_dim_cq_moder moder,
     ^~~~~~~~~~~~~

Caused by commit

  8960b38932be ("linux/dim: Rename externally used net_dim members")

from the net-next tree interacting with commit

  db05815b36cb ("net/mlx5e: Add XSK zero-copy support")

I have applied the following merge fix patch.

From 8e92dbee0daa6bac412daebd08073ba9ca31c7a6 Mon Sep 17 00:00:00 2001
From: Stephen Rothwell <sfr@canb.auug.org.au>
Date: Mon, 1 Jul 2019 14:55:02 +1000
Subject: [PATCH] net/mlx5e: fix up for "linux/dim: Rename externally used
 net_dim members"

Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
---
 drivers/net/ethernet/mellanox/mlx5/core/en.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/net/ethernet/mellanox/mlx5/core/en.h b/drivers/net/ethernet/mellanox/mlx5/core/en.h
index 9cebaa642727..f0d77eb66acf 100644
--- a/drivers/net/ethernet/mellanox/mlx5/core/en.h
+++ b/drivers/net/ethernet/mellanox/mlx5/core/en.h
@@ -974,7 +974,7 @@ int mlx5e_open_xdpsq(struct mlx5e_channel *c, struct mlx5e_params *params,
 void mlx5e_close_xdpsq(struct mlx5e_xdpsq *sq);
 
 struct mlx5e_cq_param;
-int mlx5e_open_cq(struct mlx5e_channel *c, struct net_dim_cq_moder moder,
+int mlx5e_open_cq(struct mlx5e_channel *c, struct dim_cq_moder moder,
 		  struct mlx5e_cq_param *param, struct mlx5e_cq *cq);
 void mlx5e_close_cq(struct mlx5e_cq *cq);
 
-- 
2.20.1



-- 
Cheers,
Stephen Rothwell

[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 488 bytes --]

^ permalink raw reply related	[flat|nested] 103+ messages in thread
* linux-next: build failure after merge of the bpf-next tree
@ 2020-07-14  2:22 Stephen Rothwell
  2020-07-14  6:16 ` Jiri Olsa
  0 siblings, 1 reply; 103+ messages in thread
From: Stephen Rothwell @ 2020-07-14  2:22 UTC (permalink / raw)
  To: Daniel Borkmann, Alexei Starovoitov, Networking
  Cc: Linux Next Mailing List, Linux Kernel Mailing List, Jiri Olsa

[-- Attachment #1: Type: text/plain, Size: 441 bytes --]

Hi all,

After merging the bpf-next tree, today's linux-next build (arm
multi_v7_defconfig) failed like this:

tmp/ccsqpVCY.s: Assembler messages:
tmp/ccsqpVCY.s:78: Error: unrecognized symbol type ""
tmp/ccsqpVCY.s:91: Error: unrecognized symbol type ""

I don't know what has caused this (I guess maybe the resolve_btfids
branch).

I have used the bpf-next tree from next-20200713 for today.

-- 
Cheers,
Stephen Rothwell

[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 488 bytes --]

^ permalink raw reply	[flat|nested] 103+ messages in thread
* linux-next: build failure after merge of the bpf-next tree
@ 2020-08-21  1:11 Stephen Rothwell
  2020-08-25  1:20 ` Stephen Rothwell
  0 siblings, 1 reply; 103+ messages in thread
From: Stephen Rothwell @ 2020-08-21  1:11 UTC (permalink / raw)
  To: Daniel Borkmann, Alexei Starovoitov, Networking
  Cc: Linux Next Mailing List, Linux Kernel Mailing List

[-- Attachment #1: Type: text/plain, Size: 701 bytes --]

Hi all,

After merging the bpf-next tree, today's linux-next build (x86_64
allmodconfig) failed like this:

Auto-detecting system features:
...                        libelf: [ ^[[31mOFF^[[m ]
...                          zlib: [ ^[[31mOFF^[[m ]
...                           bpf: [ ^[[32mon^[[m  ]

No libelf found
make[5]: *** [Makefile:284: elfdep] Error 1

Caused by commit

  d71fa5c9763c ("bpf: Add kernel module with user mode driver that populates bpffs.")

[For a start, can we please *not* add this verbose feature detection
output to the nrormal build?]

This is a PowerPC hosted cross build.

I have marked BPF_PRELOAD as BROKEN for now.

-- 
Cheers,
Stephen Rothwell

[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 488 bytes --]

^ permalink raw reply	[flat|nested] 103+ messages in thread
* linux-next: build failure after merge of the bpf-next tree
@ 2020-09-08  3:08 Stephen Rothwell
  2020-09-08 17:54 ` Andrii Nakryiko
  0 siblings, 1 reply; 103+ messages in thread
From: Stephen Rothwell @ 2020-09-08  3:08 UTC (permalink / raw)
  To: Daniel Borkmann, Alexei Starovoitov, Networking
  Cc: Andrii Nakryiko, Linux Next Mailing List,
	Linux Kernel Mailing List

[-- Attachment #1: Type: text/plain, Size: 1460 bytes --]

Hi all,

After merging the bpf-next tree, today's linux-next build (powerpcle perf)
failed like this:

util/bpf-loader.c: In function 'config_bpf_program':
util/bpf-loader.c:331:2: error: 'bpf_program__title' is deprecated: BPF program title is confusing term; please use bpf_program__section_name() instead [-Werror=deprecated-declarations]
  331 |  config_str = bpf_program__title(prog, false);
      |  ^~~~~~~~~~
In file included from util/bpf-loader.c:10:
tools/lib/bpf/libbpf.h:203:13: note: declared here
  203 | const char *bpf_program__title(const struct bpf_program *prog, bool needs_copy);
      |             ^~~~~~~~~~~~~~~~~~
util/bpf-loader.c: In function 'preproc_gen_prologue':
util/bpf-loader.c:457:3: error: 'bpf_program__title' is deprecated: BPF program title is confusing term; please use bpf_program__section_name() instead [-Werror=deprecated-declarations]
  457 |   title = bpf_program__title(prog, false);
      |   ^~~~~
In file included from util/bpf-loader.c:10:
tools/lib/bpf/libbpf.h:203:13: note: declared here
  203 | const char *bpf_program__title(const struct bpf_program *prog, bool needs_copy);
      |             ^~~~~~~~~~~~~~~~~~
cc1: all warnings being treated as errors

Caused or exposed by commit

  521095842027 ("libbpf: Deprecate notion of BPF program "title" in favor of "section name"")

I have used the bpf-next tree from next-20200903 for today.

-- 
Cheers,
Stephen Rothwell

[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 488 bytes --]

^ permalink raw reply	[flat|nested] 103+ messages in thread
* linux-next: build failure after merge of the bpf-next tree
@ 2020-12-01  8:07 Stephen Rothwell
  2020-12-01 14:55 ` Daniel Borkmann
  0 siblings, 1 reply; 103+ messages in thread
From: Stephen Rothwell @ 2020-12-01  8:07 UTC (permalink / raw)
  To: Daniel Borkmann, Alexei Starovoitov, Networking
  Cc: Björn Töpel, Linux Kernel Mailing List,
	Linux Next Mailing List

[-- Attachment #1: Type: text/plain, Size: 1574 bytes --]

Hi all,

After merging the bpf-next tree, today's linux-next build (x86_64
allnoconfig) failed like this:

In file included from fs/select.c:32:
include/net/busy_poll.h: In function 'sk_mark_napi_id_once':
include/net/busy_poll.h:150:36: error: 'const struct sk_buff' has no member named 'napi_id'
  150 |  __sk_mark_napi_id_once_xdp(sk, skb->napi_id);
      |                                    ^~

Caused by commit

  b02e5a0ebb17 ("xsk: Propagate napi_id to XDP socket Rx path")

sk_buff only has a napi_id if defined(CONFIG_NET_RX_BUSY_POLL) ||
defined(CONFIG_XPS).

I have applied the following patch for today.

From bd2a1a4a773c1f306460b4309b12cad245a5edad Mon Sep 17 00:00:00 2001
From: Stephen Rothwell <sfr@canb.auug.org.au>
Date: Tue, 1 Dec 2020 19:02:58 +1100
Subject: [PATCH] fix for "xsk: Propagate napi_id to XDP socket Rx path"

Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
---
 include/net/busy_poll.h | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/include/net/busy_poll.h b/include/net/busy_poll.h
index 45b3e04b99d3..07a88f592e72 100644
--- a/include/net/busy_poll.h
+++ b/include/net/busy_poll.h
@@ -147,7 +147,9 @@ static inline void __sk_mark_napi_id_once_xdp(struct sock *sk, unsigned int napi
 static inline void sk_mark_napi_id_once(struct sock *sk,
 					const struct sk_buff *skb)
 {
+#ifdef CONFIG_NET_RX_BUSY_POLL
 	__sk_mark_napi_id_once_xdp(sk, skb->napi_id);
+#endif
 }
 
 static inline void sk_mark_napi_id_once_xdp(struct sock *sk,
-- 
2.29.2

-- 
Cheers,
Stephen Rothwell

[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 488 bytes --]

^ permalink raw reply related	[flat|nested] 103+ messages in thread
* linux-next: build failure after merge of the bpf-next tree
@ 2021-03-11  0:47 Stephen Rothwell
  2021-03-11  6:47 ` Björn Töpel
  0 siblings, 1 reply; 103+ messages in thread
From: Stephen Rothwell @ 2021-03-11  0:47 UTC (permalink / raw)
  To: Daniel Borkmann, Alexei Starovoitov, Networking
  Cc: Andrii Nakryiko, Björn Töpel, Björn Töpel,
	Linux Kernel Mailing List, Linux Next Mailing List

[-- Attachment #1: Type: text/plain, Size: 398 bytes --]

Hi all,

After merging the bpf-next tree, today's linux-next build (perf) failed
like this:

make[3]: *** No rule to make target 'libbpf_util.h', needed by '/home/sfr/next/perf/staticobjs/xsk.o'.  Stop.

Caused by commit

  7e8bbe24cb8b ("libbpf: xsk: Move barriers from libbpf_util.h to xsk.h")

I have used the bpf tree from next-20210310 for today.

-- 
Cheers,
Stephen Rothwell

[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 488 bytes --]

^ permalink raw reply	[flat|nested] 103+ messages in thread
* linux-next: build failure after merge of the bpf-next tree
@ 2021-08-26  1:50 Stephen Rothwell
  2021-08-26  2:01 ` Daniel Xu
  0 siblings, 1 reply; 103+ messages in thread
From: Stephen Rothwell @ 2021-08-26  1:50 UTC (permalink / raw)
  To: Daniel Borkmann, Alexei Starovoitov, Networking
  Cc: Daniel Xu, Linux Kernel Mailing List, Linux Next Mailing List

[-- Attachment #1: Type: text/plain, Size: 943 bytes --]

Hi all,

After merging the bpf-next tree, today's linux-next build (powerpc
ppc64_defconfig) failed like this:

kernel/trace/bpf_trace.c:717:47: error: expected ')' before 'struct'
  717 | BTF_ID_LIST_GLOBAL_SINGLE(btf_task_struct_ids, struct, task_struct)
      |                                               ^~~~~~~
      |                                               )
kernel/trace/bpf_trace.c: In function 'bpf_tracing_func_proto':
kernel/trace/bpf_trace.c:1051:11: error: 'bpf_get_current_task_btf_proto' undeclared (first use in this function); did you mean 'bpf_get_current_task_proto'?
 1051 |   return &bpf_get_current_task_btf_proto;
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      |           bpf_get_current_task_proto

Caused by commit

  33c5cb36015a ("bpf: Consolidate task_struct BTF_ID declarations")

I have used the bpf-next tree from next-20210825 for today.

-- 
Cheers,
Stephen Rothwell

[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 488 bytes --]

^ permalink raw reply	[flat|nested] 103+ messages in thread
* linux-next: build failure after merge of the bpf-next tree
@ 2021-09-14  1:37 Stephen Rothwell
  2021-09-14 23:25 ` Andrii Nakryiko
  0 siblings, 1 reply; 103+ messages in thread
From: Stephen Rothwell @ 2021-09-14  1:37 UTC (permalink / raw)
  To: Daniel Borkmann, Alexei Starovoitov, Networking
  Cc: Andrii Nakryiko, Quentin Monnet, Linux Kernel Mailing List,
	Linux Next Mailing List

[-- Attachment #1: Type: text/plain, Size: 865 bytes --]

Hi all,

After merging the bpf-next tree, today's linux-next build (perf) failed
like this:

util/bpf-event.c: In function 'btf__load_from_kernel_by_id':
util/bpf-event.c:27:8: error: 'btf__get_from_id' is deprecated: libbpf v0.6+: use btf__load_from_kernel_by_id instead [-Werror=deprecated-declarations]
   27 |        int err = btf__get_from_id(id, &btf);
      |        ^~~
In file included from util/bpf-event.c:5:
/home/sfr/next/next/tools/lib/bpf/btf.h:54:16: note: declared here
   54 | LIBBPF_API int btf__get_from_id(__u32 id, struct btf **btf);
      |                ^~~~~~~~~~~~~~~~
cc1: all warnings being treated as errors

Caused by commit

  0b46b7550560 ("libbpf: Add LIBBPF_DEPRECATED_SINCE macro for scheduling API deprecations")

I have used the bpf-next tree from next-20210913 for today.

-- 
Cheers,
Stephen Rothwell

[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 488 bytes --]

^ permalink raw reply	[flat|nested] 103+ messages in thread
* linux-next: build failure after merge of the bpf-next tree
@ 2021-12-03  0:15 Stephen Rothwell
  0 siblings, 0 replies; 103+ messages in thread
From: Stephen Rothwell @ 2021-12-03  0:15 UTC (permalink / raw)
  To: Daniel Borkmann, Alexei Starovoitov, Networking
  Cc: Linux Kernel Mailing List, Linux Next Mailing List

[-- Attachment #1: Type: text/plain, Size: 7545 bytes --]

Hi all,

After merging the bpf-next tree, today's linux-next build (native perf)
failed like this:

tests/bpf.c: In function 'check_env':
tests/bpf.c:299:2: error: 'bpf_load_program' is deprecated: libbpf v0.7+: use bpf_prog_load() instead [-Werror=deprecated-declarations]
  299 |  err = bpf_load_program(BPF_PROG_TYPE_KPROBE, insns,
      |  ^~~
In file included from tests/bpf.c:28:
tools/lib/bpf/bpf.h:204:16: note: declared here
  204 | LIBBPF_API int bpf_load_program(enum bpf_prog_type type,
      |                ^~~~~~~~~~~~~~~~
cc1: all warnings being treated as errors
util/bpf-loader.c: In function 'bpf__clear':
util/bpf-loader.c:115:2: error: 'bpf_object__next' is deprecated: libbpf v0.7+: track bpf_objects in application code instead [-Werror=deprecated-declarations]
  115 |  bpf_object__for_each_safe(obj, tmp) {
      |  ^~~~~~~~~~~~~~~~~~~~~~~~~
In file included from util/bpf-loader.c:10:
tools/lib/bpf/libbpf.h:176:20: note: declared here
  176 | struct bpf_object *bpf_object__next(struct bpf_object *prev);
      |                    ^~~~~~~~~~~~~~~~
util/bpf-loader.c:115:2: error: 'bpf_object__next' is deprecated: libbpf v0.7+: track bpf_objects in application code instead [-Werror=deprecated-declarations]
  115 |  bpf_object__for_each_safe(obj, tmp) {
      |  ^~~~~~~~~~~~~~~~~~~~~~~~~
In file included from util/bpf-loader.c:10:
tools/lib/bpf/libbpf.h:176:20: note: declared here
  176 | struct bpf_object *bpf_object__next(struct bpf_object *prev);
      |                    ^~~~~~~~~~~~~~~~
util/bpf-loader.c:115:2: error: 'bpf_object__next' is deprecated: libbpf v0.7+: track bpf_objects in application code instead [-Werror=deprecated-declarations]
  115 |  bpf_object__for_each_safe(obj, tmp) {
      |  ^~~~~~~~~~~~~~~~~~~~~~~~~
In file included from util/bpf-loader.c:10:
tools/lib/bpf/libbpf.h:176:20: note: declared here
  176 | struct bpf_object *bpf_object__next(struct bpf_object *prev);
      |                    ^~~~~~~~~~~~~~~~
util/bpf-loader.c: In function 'hook_load_preprocessor':
util/bpf-loader.c:621:2: error: 'bpf_program__set_prep' is deprecated: libbpf v0.7+: use bpf_program__insns() for getting bpf_program instructions [-Werror=deprecated-declarations]
  621 |  err = bpf_program__set_prep(prog, priv->nr_types,
      |  ^~~
In file included from util/bpf-loader.c:10:
tools/lib/bpf/libbpf.h:467:16: note: declared here
  467 | LIBBPF_API int bpf_program__set_prep(struct bpf_program *prog, int nr_instance,
      |                ^~~~~~~~~~~~~~~~~~~~~
util/bpf-loader.c: In function 'bpf__foreach_event':
util/bpf-loader.c:776:5: error: 'bpf_program__nth_fd' is deprecated: libbpf v0.7+: multi-instance bpf_program support is deprecated [-Werror=deprecated-declarations]
  776 |     fd = bpf_program__nth_fd(prog, type);
      |     ^~
In file included from util/bpf-loader.c:10:
tools/lib/bpf/libbpf.h:471:16: note: declared here
  471 | LIBBPF_API int bpf_program__nth_fd(const struct bpf_program *prog, int n);
      |                ^~~~~~~~~~~~~~~~~~~
util/bpf-loader.c: In function 'bpf__apply_obj_config':
util/bpf-loader.c:1501:2: error: 'bpf_object__next' is deprecated: libbpf v0.7+: track bpf_objects in application code instead [-Werror=deprecated-declarations]
 1501 |  bpf_object__for_each_safe(obj, tmp) {
      |  ^~~~~~~~~~~~~~~~~~~~~~~~~
In file included from util/bpf-loader.c:10:
tools/lib/bpf/libbpf.h:176:20: note: declared here
  176 | struct bpf_object *bpf_object__next(struct bpf_object *prev);
      |                    ^~~~~~~~~~~~~~~~
util/bpf-loader.c:1501:2: error: 'bpf_object__next' is deprecated: libbpf v0.7+: track bpf_objects in application code instead [-Werror=deprecated-declarations]
 1501 |  bpf_object__for_each_safe(obj, tmp) {
      |  ^~~~~~~~~~~~~~~~~~~~~~~~~
In file included from util/bpf-loader.c:10:
tools/lib/bpf/libbpf.h:176:20: note: declared here
  176 | struct bpf_object *bpf_object__next(struct bpf_object *prev);
      |                    ^~~~~~~~~~~~~~~~
util/bpf-loader.c:1501:2: error: 'bpf_object__next' is deprecated: libbpf v0.7+: track bpf_objects in application code instead [-Werror=deprecated-declarations]
 1501 |  bpf_object__for_each_safe(obj, tmp) {
      |  ^~~~~~~~~~~~~~~~~~~~~~~~~
In file included from util/bpf-loader.c:10:
tools/lib/bpf/libbpf.h:176:20: note: declared here
  176 | struct bpf_object *bpf_object__next(struct bpf_object *prev);
      |                    ^~~~~~~~~~~~~~~~
util/bpf-loader.c: In function 'bpf__setup_output_event':
util/bpf-loader.c:1529:2: error: 'bpf_object__next' is deprecated: libbpf v0.7+: track bpf_objects in application code instead [-Werror=deprecated-declarations]
 1529 |  bpf__for_each_map_named(map, obj, tmp, name) {
      |  ^~~~~~~~~~~~~~~~~~~~~~~
In file included from util/bpf-loader.c:10:
tools/lib/bpf/libbpf.h:176:20: note: declared here
  176 | struct bpf_object *bpf_object__next(struct bpf_object *prev);
      |                    ^~~~~~~~~~~~~~~~
util/bpf-loader.c:1529:2: error: 'bpf_object__next' is deprecated: libbpf v0.7+: track bpf_objects in application code instead [-Werror=deprecated-declarations]
 1529 |  bpf__for_each_map_named(map, obj, tmp, name) {
      |  ^~~~~~~~~~~~~~~~~~~~~~~
In file included from util/bpf-loader.c:10:
tools/lib/bpf/libbpf.h:176:20: note: declared here
  176 | struct bpf_object *bpf_object__next(struct bpf_object *prev);
      |                    ^~~~~~~~~~~~~~~~
util/bpf-loader.c:1529:2: error: 'bpf_object__next' is deprecated: libbpf v0.7+: track bpf_objects in application code instead [-Werror=deprecated-declarations]
 1529 |  bpf__for_each_map_named(map, obj, tmp, name) {
      |  ^~~~~~~~~~~~~~~~~~~~~~~
In file included from util/bpf-loader.c:10:
tools/lib/bpf/libbpf.h:176:20: note: declared here
  176 | struct bpf_object *bpf_object__next(struct bpf_object *prev);
      |                    ^~~~~~~~~~~~~~~~
util/bpf-loader.c:1565:2: error: 'bpf_object__next' is deprecated: libbpf v0.7+: track bpf_objects in application code instead [-Werror=deprecated-declarations]
 1565 |  bpf__for_each_map_named(map, obj, tmp, name) {
      |  ^~~~~~~~~~~~~~~~~~~~~~~
In file included from util/bpf-loader.c:10:
tools/lib/bpf/libbpf.h:176:20: note: declared here
  176 | struct bpf_object *bpf_object__next(struct bpf_object *prev);
      |                    ^~~~~~~~~~~~~~~~
util/bpf-loader.c:1565:2: error: 'bpf_object__next' is deprecated: libbpf v0.7+: track bpf_objects in application code instead [-Werror=deprecated-declarations]
 1565 |  bpf__for_each_map_named(map, obj, tmp, name) {
      |  ^~~~~~~~~~~~~~~~~~~~~~~
In file included from util/bpf-loader.c:10:
tools/lib/bpf/libbpf.h:176:20: note: declared here
  176 | struct bpf_object *bpf_object__next(struct bpf_object *prev);
      |                    ^~~~~~~~~~~~~~~~
util/bpf-loader.c:1565:2: error: 'bpf_object__next' is deprecated: libbpf v0.7+: track bpf_objects in application code instead [-Werror=deprecated-declarations]
 1565 |  bpf__for_each_map_named(map, obj, tmp, name) {
      |  ^~~~~~~~~~~~~~~~~~~~~~~
In file included from util/bpf-loader.c:10:
tools/lib/bpf/libbpf.h:176:20: note: declared here
  176 | struct bpf_object *bpf_object__next(struct bpf_object *prev);
      |                    ^~~~~~~~~~~~~~~~
cc1: all warnings being treated as errors

I am not sure what caused this, but I have just used the bpf-next tree
from next-20211202 for today.

-- 
Cheers,
Stephen Rothwell

[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 488 bytes --]

^ permalink raw reply	[flat|nested] 103+ messages in thread
* linux-next: build failure after merge of the bpf-next tree
@ 2022-02-09  0:21 Stephen Rothwell
  0 siblings, 0 replies; 103+ messages in thread
From: Stephen Rothwell @ 2022-02-09  0:21 UTC (permalink / raw)
  To: Daniel Borkmann, Alexei Starovoitov, Andrii Nakryiko, bpf,
	Networking
  Cc: Song Liu, Linux Kernel Mailing List, Linux Next Mailing List

[-- Attachment #1: Type: text/plain, Size: 484 bytes --]

Hi all,

After merging the bpf-next tree, today's linux-next build (powerpc
ppc64_defconfig) failed like this:

kernel/bpf/core.c:830:23: error: variably modified 'bitmap' at file scope
  830 |         unsigned long bitmap[BITS_TO_LONGS(BPF_PROG_CHUNK_COUNT)];
      |                       ^~~~~~

Caused by commit

  57631054fae6 ("bpf: Introduce bpf_prog_pack allocator")

I have used the bpf-next tree from next-20220208 for today.

-- 
Cheers,
Stephen Rothwell

[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 488 bytes --]

^ permalink raw reply	[flat|nested] 103+ messages in thread
* linux-next: build failure after merge of the bpf-next tree
@ 2022-04-19  1:56 Stephen Rothwell
  2022-04-21  0:32 ` Stephen Rothwell
  0 siblings, 1 reply; 103+ messages in thread
From: Stephen Rothwell @ 2022-04-19  1:56 UTC (permalink / raw)
  To: Daniel Borkmann, Alexei Starovoitov, Andrii Nakryiko
  Cc: bpf, Networking, Maciej Fijalkowski, Linux Kernel Mailing List,
	Linux Next Mailing List

[-- Attachment #1: Type: text/plain, Size: 1807 bytes --]

Hi all,

After merging the bpf-next tree, today's linux-next build
(x86_64 allmodconfig) failed like this:

In file included from include/linux/compiler_types.h:73,
                 from <command-line>:
drivers/net/ethernet/intel/i40e/i40e_xsk.c: In function 'i40e_run_xdp_zc':
include/linux/compiler_attributes.h:222:41: error: attribute 'fallthrough' not preceding a case label or default label [-Werror]
  222 | # define fallthrough                    __attribute__((__fallthrough__))
      |                                         ^~~~~~~~~~~~~
drivers/net/ethernet/intel/i40e/i40e_xsk.c:192:17: note: in expansion of macro 'fallthrough'
  192 |                 fallthrough; /* handle aborts by dropping packet */
      |                 ^~~~~~~~~~~
cc1: all warnings being treated as errors
In file included from include/linux/compiler_types.h:73,
                 from <command-line>:
drivers/net/ethernet/intel/ixgbe/ixgbe_xsk.c: In function 'ixgbe_run_xdp_zc':
include/linux/compiler_attributes.h:222:41: error: attribute 'fallthrough' not preceding a case label or default label [-Werror]
  222 | # define fallthrough                    __attribute__((__fallthrough__))
      |                                         ^~~~~~~~~~~~~
drivers/net/ethernet/intel/ixgbe/ixgbe_xsk.c:147:17: note: in expansion of macro 'fallthrough'
  147 |                 fallthrough; /* handle aborts by dropping packet */
      |                 ^~~~~~~~~~~
cc1: all warnings being treated as errors

Caused by commits

  b8aef650e549 ("i40e, xsk: Terminate Rx side of NAPI when XSK Rx queue gets full")
  c7dd09fd4628 ("ixgbe, xsk: Terminate Rx side of NAPI when XSK Rx queue gets full")

I have used the bpf-next tree from next-20220414 for today.

-- 
Cheers,
Stephen Rothwell

[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 488 bytes --]

^ permalink raw reply	[flat|nested] 103+ messages in thread
* linux-next: build failure after merge of the bpf-next tree
@ 2022-07-20  1:59 Stephen Rothwell
  2022-07-20  3:42 ` Alexei Starovoitov
  0 siblings, 1 reply; 103+ messages in thread
From: Stephen Rothwell @ 2022-07-20  1:59 UTC (permalink / raw)
  To: Daniel Borkmann, Alexei Starovoitov, Andrii Nakryiko
  Cc: bpf, Networking, Stanislav Fomichev, Linux Kernel Mailing List,
	Linux Next Mailing List

[-- Attachment #1: Type: text/plain, Size: 922 bytes --]

Hi all,

After merging the bpf-next tree, today's linux-next build (powerpc
ppc64_defconfig) failed like this:

ld: warning: discarding dynamic section .glink
ld: warning: discarding dynamic section .plt
ld: linkage table error against `bpf_trampoline_unlink_cgroup_shim'
ld: stubs don't match calculated size
ld: can not build stubs: bad value
ld: kernel/bpf/cgroup.o: in function `.bpf_cgroup_link_release.part.0':
cgroup.c:(.text+0x2fc4): undefined reference to `.bpf_trampoline_unlink_cgroup_shim'
ld: kernel/bpf/cgroup.o: in function `.cgroup_bpf_release':
cgroup.c:(.text+0x33b0): undefined reference to `.bpf_trampoline_unlink_cgroup_shim'
ld: cgroup.c:(.text+0x33c0): undefined reference to `.bpf_trampoline_unlink_cgroup_shim'

Caused by commit

  3908fcddc65d ("bpf: fix lsm_cgroup build errors on esoteric configs")

I have reverted that commit for today.

-- 
Cheers,
Stephen Rothwell

[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 488 bytes --]

^ permalink raw reply	[flat|nested] 103+ messages in thread
* linux-next: build failure after merge of the bpf-next tree
@ 2023-03-19 23:26 Stephen Rothwell
  2023-03-20 12:07 ` Alexander Lobakin
  0 siblings, 1 reply; 103+ messages in thread
From: Stephen Rothwell @ 2023-03-19 23:26 UTC (permalink / raw)
  To: Daniel Borkmann, Alexei Starovoitov, Andrii Nakryiko
  Cc: Alexander Lobakin, bpf, Networking, Linux Kernel Mailing List,
	Linux Next Mailing List

[-- Attachment #1: Type: text/plain, Size: 873 bytes --]

Hi all,

After merging the bpf-next tree, today's linux-next build (powerpc
ppc64_defconfig) failed like this:

net/bpf/test_run.c: In function 'frame_was_changed':
net/bpf/test_run.c:224:22: error: 'const struct xdp_page_head' has no member named 'frm'; did you mean 'frame'?
  224 |         return head->frm.data != head->orig_ctx.data ||
      |                      ^~~
      |                      frame
net/bpf/test_run.c:225:22: error: 'const struct xdp_page_head' has no member named 'frm'; did you mean 'frame'?
  225 |                head->frm.flags != head->orig_ctx.flags;
      |                      ^~~
      |                      frame

Caused by commit

  e5995bc7e2ba ("bpf, test_run: fix crashes due to XDP frame overwriting/corruption")

I have used the bpf-next tree from next-20230317 for today.

-- 
Cheers,
Stephen Rothwell

[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 488 bytes --]

^ permalink raw reply	[flat|nested] 103+ messages in thread
* linux-next: build failure after merge of the bpf-next tree
@ 2024-06-17 18:15 Mark Brown
  2024-06-22  8:17 ` kernel test robot
                   ` (3 more replies)
  0 siblings, 4 replies; 103+ messages in thread
From: Mark Brown @ 2024-06-17 18:15 UTC (permalink / raw)
  To: Daniel Borkmann, Alexei Starovoitov, Andrii Nakryiko, bpf,
	Networking, Benjamin Tissoires, Jiri Kosina
  Cc: Kui-Feng Lee, Martin KaFai Lau, linux-input,
	Linux Kernel Mailing List, Linux Next Mailing List, bpf

[-- Attachment #1: Type: text/plain, Size: 2398 bytes --]

Hi all,

After merging the bpf-next tree, today's linux-next build (x86_64
allmodconfig) failed like this:

/tmp/next/build/drivers/hid/bpf/hid_bpf_struct_ops.c:280:16: error: initialization of 'int (*)(void *, struct bpf_link *)' from incompatible pointer type 'int (*)(void *)' [-Werror=incompatible-pointer-types]
  280 |         .reg = hid_bpf_reg,
      |                ^~~~~~~~~~~
/tmp/next/build/drivers/hid/bpf/hid_bpf_struct_ops.c:280:16: note: (near initialization for 'bpf_hid_bpf_ops.reg')
/tmp/next/build/drivers/hid/bpf/hid_bpf_struct_ops.c:281:18: error: initialization of 'void (*)(void *, struct bpf_link *)' from incompatible pointer type 'void (*)(void *)' [-Werror=incompatible-pointer-types]
  281 |         .unreg = hid_bpf_unreg,
      |                  ^~~~~~~~~~~~~
/tmp/next/build/drivers/hid/bpf/hid_bpf_struct_ops.c:281:18: note: (near initialization for 'bpf_hid_bpf_ops.unreg')

Caused by commit

  73287fe228721b ("bpf: pass bpf_struct_ops_link to callbacks in bpf_struct_ops.")

interacting with commit

  ebc0d8093e8c97 ("HID: bpf: implement HID-BPF through bpf_struct_ops")

from the HID tree.

I've fixed it up as below:

From e8aeaba00440845f9bd8d6183ca5d7383a678cd3 Mon Sep 17 00:00:00 2001
From: Mark Brown <broonie@kernel.org>
Date: Mon, 17 Jun 2024 19:02:27 +0100
Subject: [PATCH] HID: bpf: Fix up build

Fix up build error due to 73287fe228721b ("bpf: pass bpf_struct_ops_link to callbacks in bpf_struct_ops.")

Signed-off-by: Mark Brown <broonie@kernel.org>
---
 drivers/hid/bpf/hid_bpf_struct_ops.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/hid/bpf/hid_bpf_struct_ops.c b/drivers/hid/bpf/hid_bpf_struct_ops.c
index 5f200557ff12b..744318e7d936b 100644
--- a/drivers/hid/bpf/hid_bpf_struct_ops.c
+++ b/drivers/hid/bpf/hid_bpf_struct_ops.c
@@ -175,7 +175,7 @@ static int hid_bpf_ops_init_member(const struct btf_type *t,
 	return 0;
 }
 
-static int hid_bpf_reg(void *kdata)
+static int hid_bpf_reg(void *kdata, struct bpf_link *link)
 {
 	struct hid_bpf_ops *ops = kdata;
 	struct hid_device *hdev;
@@ -229,7 +229,7 @@ static int hid_bpf_reg(void *kdata)
 	return err;
 }
 
-static void hid_bpf_unreg(void *kdata)
+static void hid_bpf_unreg(void *kdata, struct bpf_link *link)
 {
 	struct hid_bpf_ops *ops = kdata;
 	struct hid_device *hdev;
-- 
2.39.2


[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 488 bytes --]

^ permalink raw reply related	[flat|nested] 103+ messages in thread
* linux-next: build failure after merge of the bpf-next tree
@ 2024-08-14  1:18 Stephen Rothwell
  0 siblings, 0 replies; 103+ messages in thread
From: Stephen Rothwell @ 2024-08-14  1:18 UTC (permalink / raw)
  To: Daniel Borkmann, Alexei Starovoitov, Andrii Nakryiko,
	Christian Brauner
  Cc: Al Viro, bpf, Networking, Linux Kernel Mailing List,
	Linux Next Mailing List

[-- Attachment #1: Type: text/plain, Size: 2292 bytes --]

Hi all,

After merging the bpf-next tree, today's linux-next build (powerpc
ppc64_defconfig) failed like this:

fs/namespace.c: In function 'grab_requested_mnt_ns':
fs/namespace.c:5295:23: error: 'class_fd_t' {aka 'struct fd'} has no member named 'file'
 5295 |                 if (!f.file)
      |                       ^
fs/namespace.c:5298:36: error: 'class_fd_t' {aka 'struct fd'} has no member named 'file'
 5298 |                 if (!proc_ns_file(f.file))
      |                                    ^
In file included from fs/namespace.c:25:
fs/namespace.c:5301:46: error: 'class_fd_t' {aka 'struct fd'} has no member named 'file'
 5301 |                 ns = get_proc_ns(file_inode(f.file));
      |                                              ^
include/linux/proc_ns.h:75:50: note: in definition of macro 'get_proc_ns'
   75 | #define get_proc_ns(inode) ((struct ns_common *)(inode)->i_private)
      |                                                  ^~~~~

Caused by commit

  1da91ea87aef ("introduce fd_file(), convert all accessors to it.")

interacting with commit

  7b9d14af8777 ("fs: allow mount namespace fd")

from the vfs-brauner tree.

I applied the following merge fix patch:

From: Stephen Rothwell <sfr@canb.auug.org.au>
Date: Wed, 14 Aug 2024 11:07:38 +1000
Subject: [PATCH] fixup for "introduce fd_file(), convert all accessors to it."

interacting with "fs: allow mount namespace fd" from hte vfs-brauner tree.

Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
---
 fs/namespace.c | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/fs/namespace.c b/fs/namespace.c
index 159be8ed9d24..7aed325c48ad 100644
--- a/fs/namespace.c
+++ b/fs/namespace.c
@@ -5292,13 +5292,13 @@ static struct mnt_namespace *grab_requested_mnt_ns(const struct mnt_id_req *kreq
 		struct ns_common *ns;
 
 		CLASS(fd, f)(kreq->spare);
-		if (!f.file)
+		if (!fd_file(f))
 			return ERR_PTR(-EBADF);
 
-		if (!proc_ns_file(f.file))
+		if (!proc_ns_file(fd_file(f)))
 			return ERR_PTR(-EINVAL);
 
-		ns = get_proc_ns(file_inode(f.file));
+		ns = get_proc_ns(file_inode(fd_file(f)));
 		if (ns->ops->type != CLONE_NEWNS)
 			return ERR_PTR(-EINVAL);
 
-- 
2.43.0

-- 
Cheers,
Stephen Rothwell

[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 488 bytes --]

^ permalink raw reply related	[flat|nested] 103+ messages in thread
* linux-next: build failure after merge of the bpf-next tree
@ 2024-08-14  1:25 Stephen Rothwell
  2024-08-14  1:41 ` Al Viro
  2024-08-30  1:32 ` Stephen Rothwell
  0 siblings, 2 replies; 103+ messages in thread
From: Stephen Rothwell @ 2024-08-14  1:25 UTC (permalink / raw)
  To: Daniel Borkmann, Alexei Starovoitov, Andrii Nakryiko,
	Christian Brauner
  Cc: Al Viro, bpf, Networking, Linux Kernel Mailing List,
	Linux Next Mailing List

[-- Attachment #1: Type: text/plain, Size: 5791 bytes --]

Hi all,

After merging the bpf-next tree, today's linux-next build (powerpc
ppc64_defconfig) failed like this:

fs/xattr.c: In function 'path_getxattrat':
fs/xattr.c:832:23: error: 'class_fd_t' {aka 'struct fd'} has no member named 'file'
  832 |                 if (!f.file)
      |                       ^
fs/xattr.c:834:29: error: 'class_fd_t' {aka 'struct fd'} has no member named 'file'
  834 |                 audit_file(f.file);
      |                             ^
fs/xattr.c:835:49: error: 'class_fd_t' {aka 'struct fd'} has no member named 'file'
  835 |                 return getxattr(file_mnt_idmap(f.file), file_dentry(f.file),
      |                                                 ^
fs/xattr.c:835:70: error: 'class_fd_t' {aka 'struct fd'} has no member named 'file'
  835 |                 return getxattr(file_mnt_idmap(f.file), file_dentry(f.file),
      |                                                                      ^
fs/xattr.c: In function 'path_listxattrat':
fs/xattr.c:952:23: error: 'class_fd_t' {aka 'struct fd'} has no member named 'file'
  952 |                 if (!f.file)
      |                       ^
fs/xattr.c:954:29: error: 'class_fd_t' {aka 'struct fd'} has no member named 'file'
  954 |                 audit_file(f.file);
      |                             ^
fs/xattr.c:955:47: error: 'class_fd_t' {aka 'struct fd'} has no member named 'file'
  955 |                 return listxattr(file_dentry(f.file), list, size);
      |                                               ^
fs/xattr.c: In function 'do_fremovexattr':
fs/xattr.c:1021:15: error: 'class_fd_t' {aka 'struct fd'} has no member named 'file'
 1021 |         if (!f.file)
      |               ^
fs/xattr.c:1023:21: error: 'class_fd_t' {aka 'struct fd'} has no member named 'file'
 1023 |         audit_file(f.file);
      |                     ^
fs/xattr.c:1031:38: error: 'class_fd_t' {aka 'struct fd'} has no member named 'file'
 1031 |         error = mnt_want_write_file(f.file);
      |                                      ^
fs/xattr.c:1033:53: error: 'class_fd_t' {aka 'struct fd'} has no member named 'file'
 1033 |                 error = removexattr(file_mnt_idmap(f.file),
      |                                                     ^
fs/xattr.c:1034:38: error: 'class_fd_t' {aka 'struct fd'} has no member named 'file'
 1034 |                                     f.file->f_path.dentry, kname);
      |                                      ^
fs/xattr.c:1035:38: error: 'class_fd_t' {aka 'struct fd'} has no member named 'file'
 1035 |                 mnt_drop_write_file(f.file);
      |                                      ^

Caused by commit

  1da91ea87aef ("introduce fd_file(), convert all accessors to it.")

interacting with commits

  1a61c9d6ec1d ("xattr: handle AT_EMPTY_PATH when setting xattrs")
  278397b2c592 ("xattr: handle AT_EMPTY_PATH when getting xattrs")
  5560ab7ee32e ("xattr: handle AT_EMPTY_PATH when listing xattrs")
  33fce6444e7d ("xattr: handle AT_EMPTY_PATH when removing xattrs")

from the vfs-brauner tree.

I applied the following merge fix patch:

From: Stephen Rothwell <sfr@canb.auug.org.au>
Date: Wed, 14 Aug 2024 11:20:43 +1000
Subject: [PATCH] fixup2 for "introduce fd_file(), convert all accessors to
 it."

interacting with

  1a61c9d6ec1d ("xattr: handle AT_EMPTY_PATH when setting xattrs")
  278397b2c592 ("xattr: handle AT_EMPTY_PATH when getting xattrs")
  5560ab7ee32e ("xattr: handle AT_EMPTY_PATH when listing xattrs")
  33fce6444e7d ("xattr: handle AT_EMPTY_PATH when removing xattrs")

from the vfs-brauner tree.

Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
---
 fs/xattr.c | 24 ++++++++++++------------
 1 file changed, 12 insertions(+), 12 deletions(-)

diff --git a/fs/xattr.c b/fs/xattr.c
index fa992953fa78..c0ecd0809172 100644
--- a/fs/xattr.c
+++ b/fs/xattr.c
@@ -829,10 +829,10 @@ static ssize_t path_getxattrat(int dfd, const char __user *pathname,
 
 	if (at_flags & AT_EMPTY_PATH && vfs_empty_path(dfd, pathname)) {
 		CLASS(fd, f)(dfd);
-		if (!f.file)
+		if (!fd_file(f))
 			return -EBADF;
-		audit_file(f.file);
-		return getxattr(file_mnt_idmap(f.file), file_dentry(f.file),
+		audit_file(fd_file(f));
+		return getxattr(file_mnt_idmap(fd_file(f)), file_dentry(fd_file(f)),
 				name, value, size);
 	}
 
@@ -949,10 +949,10 @@ static ssize_t path_listxattrat(int dfd, const char __user *pathname,
 
 	if (at_flags & AT_EMPTY_PATH && vfs_empty_path(dfd, pathname)) {
 		CLASS(fd, f)(dfd);
-		if (!f.file)
+		if (!fd_file(f))
 			return -EBADF;
-		audit_file(f.file);
-		return listxattr(file_dentry(f.file), list, size);
+		audit_file(fd_file(f));
+		return listxattr(file_dentry(fd_file(f)), list, size);
 	}
 
 	lookup_flags = (at_flags & AT_SYMLINK_NOFOLLOW) ? 0 : LOOKUP_FOLLOW;
@@ -1018,9 +1018,9 @@ static int do_fremovexattr(int fd, const char __user *name)
 	int error = -EBADF;
 
 	CLASS(fd, f)(fd);
-	if (!f.file)
+	if (!fd_file(f))
 		return error;
-	audit_file(f.file);
+	audit_file(fd_file(f));
 
 	error = strncpy_from_user(kname, name, sizeof(kname));
 	if (error == 0 || error == sizeof(kname))
@@ -1028,11 +1028,11 @@ static int do_fremovexattr(int fd, const char __user *name)
 	if (error < 0)
 		return error;
 
-	error = mnt_want_write_file(f.file);
+	error = mnt_want_write_file(fd_file(f));
 	if (!error) {
-		error = removexattr(file_mnt_idmap(f.file),
-				    f.file->f_path.dentry, kname);
-		mnt_drop_write_file(f.file);
+		error = removexattr(file_mnt_idmap(fd_file(f)),
+				    fd_file(f)->f_path.dentry, kname);
+		mnt_drop_write_file(fd_file(f));
 	}
 	return error;
 }
-- 
2.43.0

-- 
Cheers,
Stephen Rothwell

[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 488 bytes --]

^ permalink raw reply related	[flat|nested] 103+ messages in thread
* linux-next: build failure after merge of the bpf-next tree
@ 2024-09-13  3:32 Stephen Rothwell
  2024-09-15 23:26 ` Stephen Rothwell
  0 siblings, 1 reply; 103+ messages in thread
From: Stephen Rothwell @ 2024-09-13  3:32 UTC (permalink / raw)
  To: Daniel Borkmann, Alexei Starovoitov, Andrii Nakryiko,
	Christian Brauner
  Cc: Al Viro, bpf, Networking, Linux Kernel Mailing List,
	Linux Next Mailing List

[-- Attachment #1: Type: text/plain, Size: 2222 bytes --]

Hi all,

After merging the bpf-next tree, today's linux-next build (powerpc
ppc64_defconfig) failed like this:

fs/namespace.c: In function 'grab_requested_mnt_ns':
fs/namespace.c:5299:23: error: 'class_fd_t' {aka 'struct fd'} has no member named 'file'
 5299 |                 if (!f.file)
      |                       ^
fs/namespace.c:5302:36: error: 'class_fd_t' {aka 'struct fd'} has no member named 'file'
 5302 |                 if (!proc_ns_file(f.file))
      |                                    ^
In file included from fs/namespace.c:25:
fs/namespace.c:5305:46: error: 'class_fd_t' {aka 'struct fd'} has no member named 'file'
 5305 |                 ns = get_proc_ns(file_inode(f.file));
      |                                              ^
include/linux/proc_ns.h:75:50: note: in definition of macro 'get_proc_ns'
   75 | #define get_proc_ns(inode) ((struct ns_common *)(inode)->i_private)
      |                                                  ^~~~~

Caused by commit

  1da91ea87aef ("introduce fd_file(), convert all accessors to it.")

interacting with commit

  7b9d14af8777 ("fs: allow mount namespace fd")

-- 
Cheers,
Stephen Rothwell

From: Stephen Rothwell <sfr@canb.auug.org.au>
Date: Fri, 13 Sep 2024 13:27:11 +1000
Subject: [PATCH] fixe up for "introduce fd_file(), convert all accessors to it."

interacting with "fs: allow mount namespace fd" from the vfs-brauner tree.

Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
---
 fs/namespace.c | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/fs/namespace.c b/fs/namespace.c
index 8e88938d3f19..cad6dd5db2da 100644
--- a/fs/namespace.c
+++ b/fs/namespace.c
@@ -5296,13 +5296,13 @@ static struct mnt_namespace *grab_requested_mnt_ns(const struct mnt_id_req *kreq
 		struct ns_common *ns;
 
 		CLASS(fd, f)(kreq->spare);
-		if (!f.file)
+		if (!fd_file(f))
 			return ERR_PTR(-EBADF);
 
-		if (!proc_ns_file(f.file))
+		if (!proc_ns_file(fd_file(f)))
 			return ERR_PTR(-EINVAL);
 
-		ns = get_proc_ns(file_inode(f.file));
+		ns = get_proc_ns(file_inode(fd_file(f)));
 		if (ns->ops->type != CLONE_NEWNS)
 			return ERR_PTR(-EINVAL);
 
-- 
2.45.2


[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 488 bytes --]

^ permalink raw reply related	[flat|nested] 103+ messages in thread
* linux-next: build failure after merge of the bpf-next tree
@ 2024-09-13  3:45 Stephen Rothwell
  2024-09-13  3:48 ` Stephen Rothwell
  2024-09-15 23:27 ` Stephen Rothwell
  0 siblings, 2 replies; 103+ messages in thread
From: Stephen Rothwell @ 2024-09-13  3:45 UTC (permalink / raw)
  To: Daniel Borkmann, Alexei Starovoitov, Andrii Nakryiko,
	Christian Brauner
  Cc: Al Viro, bpf, Networking, Linux Kernel Mailing List,
	Linux Next Mailing List

[-- Attachment #1: Type: text/plain, Size: 4243 bytes --]

Hi all,

After merging the bpf-next tree, today's linux-next build (powerpc
ppc64_defconfig) failed like this:


Caused by commit

  1da91ea87aef ("introduce fd_file(), convert all accessors to it.")

interacting with commits

  1a61c9d6ec1d ("xattr: handle AT_EMPTY_PATH when setting xattrs")
  278397b2c592 ("xattr: handle AT_EMPTY_PATH when getting xattrs")
  5560ab7ee32e ("xattr: handle AT_EMPTY_PATH when listing xattrs")
  33fce6444e7d ("xattr: handle AT_EMPTY_PATH when removing xattrs")

I have applied the following patch for today.

From: Stephen Rothwell <sfr@canb.auug.org.au>
Date: Fri, 13 Sep 2024 13:40:17 +1000
Subject: [PATCH] fix up 2 for "introduce fd_file(), convert all accessors to it."

interacting with commits

  1a61c9d6ec1d ("xattr: handle AT_EMPTY_PATH when setting xattrs")
  278397b2c592 ("xattr: handle AT_EMPTY_PATH when getting xattrs")
  5560ab7ee32e ("xattr: handle AT_EMPTY_PATH when listing xattrs")
  33fce6444e7d ("xattr: handle AT_EMPTY_PATH when removing xattrs")

from the vfs-brauner tree.

Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
---
 fs/xattr.c | 32 ++++++++++++++++----------------
 1 file changed, 16 insertions(+), 16 deletions(-)

diff --git a/fs/xattr.c b/fs/xattr.c
index fa992953fa78..f3559ed3279f 100644
--- a/fs/xattr.c
+++ b/fs/xattr.c
@@ -645,7 +645,7 @@ static int do_fsetxattr(int fd, const char __user *name,
 	int error;
 
 	CLASS(fd, f)(fd);
-	if (!fd_file(f))
+	if (fd_empty(f))
 		return -EBADF;
 
 	audit_file(fd_file(f));
@@ -829,10 +829,10 @@ static ssize_t path_getxattrat(int dfd, const char __user *pathname,
 
 	if (at_flags & AT_EMPTY_PATH && vfs_empty_path(dfd, pathname)) {
 		CLASS(fd, f)(dfd);
-		if (!f.file)
+		if (fd_empty(f))
 			return -EBADF;
-		audit_file(f.file);
-		return getxattr(file_mnt_idmap(f.file), file_dentry(f.file),
+		audit_file(fd_file(f));
+		return getxattr(file_mnt_idmap(fd_file(f)), file_dentry(fd_file(f)),
 				name, value, size);
 	}
 
@@ -895,7 +895,7 @@ SYSCALL_DEFINE4(fgetxattr, int, fd, const char __user *, name,
 	struct fd f = fdget(fd);
 	ssize_t error = -EBADF;
 
-	if (!fd_file(f))
+	if (fd_empty(f))
 		return error;
 	audit_file(fd_file(f));
 	error = getxattr(file_mnt_idmap(fd_file(f)), fd_file(f)->f_path.dentry,
@@ -949,10 +949,10 @@ static ssize_t path_listxattrat(int dfd, const char __user *pathname,
 
 	if (at_flags & AT_EMPTY_PATH && vfs_empty_path(dfd, pathname)) {
 		CLASS(fd, f)(dfd);
-		if (!f.file)
+		if (fd_empty(f))
 			return -EBADF;
-		audit_file(f.file);
-		return listxattr(file_dentry(f.file), list, size);
+		audit_file(fd_file(f));
+		return listxattr(file_dentry(fd_file(f)), list, size);
 	}
 
 	lookup_flags = (at_flags & AT_SYMLINK_NOFOLLOW) ? 0 : LOOKUP_FOLLOW;
@@ -993,7 +993,7 @@ SYSCALL_DEFINE3(flistxattr, int, fd, char __user *, list, size_t, size)
 	struct fd f = fdget(fd);
 	ssize_t error = -EBADF;
 
-	if (!fd_file(f))
+	if (fd_empty(f))
 		return error;
 	audit_file(fd_file(f));
 	error = listxattr(fd_file(f)->f_path.dentry, list, size);
@@ -1018,9 +1018,9 @@ static int do_fremovexattr(int fd, const char __user *name)
 	int error = -EBADF;
 
 	CLASS(fd, f)(fd);
-	if (!f.file)
+	if (fd_empty(f))
 		return error;
-	audit_file(f.file);
+	audit_file(fd_file(f));
 
 	error = strncpy_from_user(kname, name, sizeof(kname));
 	if (error == 0 || error == sizeof(kname))
@@ -1028,11 +1028,11 @@ static int do_fremovexattr(int fd, const char __user *name)
 	if (error < 0)
 		return error;
 
-	error = mnt_want_write_file(f.file);
+	error = mnt_want_write_file(fd_file(f));
 	if (!error) {
-		error = removexattr(file_mnt_idmap(f.file),
-				    f.file->f_path.dentry, kname);
-		mnt_drop_write_file(f.file);
+		error = removexattr(file_mnt_idmap(fd_file(f)),
+				    fd_file(f)->f_path.dentry, kname);
+		mnt_drop_write_file(fd_file(f));
 	}
 	return error;
 }
@@ -1099,7 +1099,7 @@ SYSCALL_DEFINE2(fremovexattr, int, fd, const char __user *, name)
 	char kname[XATTR_NAME_MAX + 1];
 	int error = -EBADF;
 
-	if (!fd_file(f))
+	if (fd_empty(f))
 		return error;
 	audit_file(fd_file(f));
 
-- 
2.45.2

-- 
Cheers,
Stephen Rothwell

[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 488 bytes --]

^ permalink raw reply related	[flat|nested] 103+ messages in thread
* linux-next: build failure after merge of the bpf-next tree
@ 2024-09-13  3:55 Stephen Rothwell
  2024-09-13  4:00 ` Al Viro
  2024-09-15 23:30 ` Stephen Rothwell
  0 siblings, 2 replies; 103+ messages in thread
From: Stephen Rothwell @ 2024-09-13  3:55 UTC (permalink / raw)
  To: Daniel Borkmann, Alexei Starovoitov, Andrii Nakryiko,
	David Chinner
  Cc: Darrick J. Wong, Al Viro, linux-xfs, bpf, Networking,
	Linux Kernel Mailing List, Linux Next Mailing List

[-- Attachment #1: Type: text/plain, Size: 1645 bytes --]

Hi all,

After merging the bpf-next tree, today's linux-next build (powerpc
ppc64_defconfig) failed like this:

fs/xfs/xfs_exchrange.c: In function 'xfs_ioc_commit_range':
fs/xfs/xfs_exchrange.c:938:19: error: 'struct fd' has no member named 'file'
  938 |         if (!file1.file)
      |                   ^
fs/xfs/xfs_exchrange.c:940:26: error: 'struct fd' has no member named 'file'
  940 |         fxr.file1 = file1.file;
      |                          ^

Caused by commit

  1da91ea87aef ("introduce fd_file(), convert all accessors to it.")

interacting with commit

  398597c3ef7f ("xfs: introduce new file range commit ioctls")

I have applied the following patch for today.

From: Stephen Rothwell <sfr@canb.auug.org.au>
Date: Fri, 13 Sep 2024 13:53:35 +1000
Subject: [PATCH] fix up 3 for "introduce fd_file(), convert all accessors to
 it."

interacting with commit "xfs: introduce new file range commit ioctls"
from the xfs tree.

Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
---
 fs/xfs/xfs_exchrange.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/fs/xfs/xfs_exchrange.c b/fs/xfs/xfs_exchrange.c
index 39fe02a8deac..75cb53f090d1 100644
--- a/fs/xfs/xfs_exchrange.c
+++ b/fs/xfs/xfs_exchrange.c
@@ -935,9 +935,9 @@ xfs_ioc_commit_range(
 	fxr.file2_ctime.tv_nsec	= kern_f->file2_ctime_nsec;
 
 	file1 = fdget(args.file1_fd);
-	if (!file1.file)
+	if (fd_empty(file1))
 		return -EBADF;
-	fxr.file1 = file1.file;
+	fxr.file1 = fd_file(file1);
 
 	error = xfs_exchange_range(&fxr);
 	fdput(file1);
-- 
2.45.2

-- 
Cheers,
Stephen Rothwell

[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 488 bytes --]

^ permalink raw reply related	[flat|nested] 103+ messages in thread
* linux-next: build failure after merge of the bpf-next tree
@ 2024-10-16  6:05 Stephen Rothwell
  2024-10-16 16:25 ` Alexei Starovoitov
  0 siblings, 1 reply; 103+ messages in thread
From: Stephen Rothwell @ 2024-10-16  6:05 UTC (permalink / raw)
  To: Daniel Borkmann, Alexei Starovoitov, Andrii Nakryiko
  Cc: Namhyung Kim, bpf, Networking, Linux Kernel Mailing List,
	Linux Next Mailing List

[-- Attachment #1: Type: text/plain, Size: 1809 bytes --]

Hi all,

After merging the bpf-next tree, today's linux-next build (arm64
defconfig) failed like this:

Building: arm64 defconfig
In file included from arch/arm64/include/asm/thread_info.h:17,
                 from include/linux/thread_info.h:60,
                 from arch/arm64/include/asm/preempt.h:6,
                 from include/linux/preempt.h:79,
                 from include/linux/spinlock.h:56,
                 from include/linux/mmzone.h:8,
                 from include/linux/gfp.h:7,
                 from include/linux/slab.h:16,
                 from mm/slab_common.c:7:
mm/slab_common.c: In function 'bpf_get_kmem_cache':
arch/arm64/include/asm/memory.h:427:66: error: passing argument 1 of 'virt_to_pfn' makes pointer from integer without a cast [-Wint-conversion]
  427 |         __is_lm_address(__addr) && pfn_is_map_memory(virt_to_pfn(__addr));      \
      |                                                                  ^~~~~~
      |                                                                  |
      |                                                                  u64 {aka long long unsigned int}
mm/slab_common.c:1260:14: note: in expansion of macro 'virt_addr_valid'
 1260 |         if (!virt_addr_valid(addr))
      |              ^~~~~~~~~~~~~~~
arch/arm64/include/asm/memory.h:382:53: note: expected 'const void *' but argument is of type 'u64' {aka 'long long unsigned int'}
  382 | static inline unsigned long virt_to_pfn(const void *kaddr)
      |                                         ~~~~~~~~~~~~^~~~~

Caused by commit

  04b069ff0181 ("mm/bpf: Add bpf_get_kmem_cache() kfunc")

I have reverted commit

  08c837461891 ("Merge branch 'bpf-add-kmem_cache-iterator-and-kfunc'")

for today.

-- 
Cheers,
Stephen Rothwell

[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 488 bytes --]

^ permalink raw reply	[flat|nested] 103+ messages in thread
* linux-next: build failure after merge of the bpf-next tree
@ 2025-03-12  3:52 Stephen Rothwell
  0 siblings, 0 replies; 103+ messages in thread
From: Stephen Rothwell @ 2025-03-12  3:52 UTC (permalink / raw)
  To: Daniel Borkmann, Alexei Starovoitov, Andrii Nakryiko,
	Andrew Morton
  Cc: Shakeel Butt, Sebastian Andrzej Siewior, Vlastimil Babka, bpf,
	Networking, Linux Kernel Mailing List, Linux Next Mailing List

[-- Attachment #1: Type: text/plain, Size: 5745 bytes --]

Hi all,

After merging the bpf-next tree, today's linux-next build (powerpc
ppc64_defconfig) failed like this:

In file included from include/asm-generic/percpu.h:7,
                 from arch/powerpc/include/asm/percpu.h:28,
                 from arch/powerpc/include/asm/smp.h:26,
                 from include/linux/smp.h:119,
                 from include/linux/lockdep.h:14,
                 from include/linux/radix-tree.h:14,
                 from include/linux/idr.h:15,
                 from include/linux/cgroup-defs.h:13,
                 from mm/memcontrol.c:28:
mm/memcontrol.c: In function 'memcg_hotplug_cpu_dead':
include/linux/percpu-defs.h:242:2: error: passing argument 1 of 'local_lock_acquire' from incompatible pointer type [-Wincompatible-pointer-types]
  242 | ({                                                                      \
      | ~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      |  |
      |  localtry_lock_t *
  243 |         __verify_pcpu_ptr(ptr);                                         \
      |         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  244 |         arch_raw_cpu_ptr(ptr);                                          \
      |         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  245 | })
      | ~~
include/linux/percpu-defs.h:254:27: note: in expansion of macro 'raw_cpu_ptr'
  254 | #define this_cpu_ptr(ptr) raw_cpu_ptr(ptr)
      |                           ^~~~~~~~~~~
include/linux/local_lock_internal.h:105:36: note: in expansion of macro 'this_cpu_ptr'
  105 |                 local_lock_acquire(this_cpu_ptr(lock));         \
      |                                    ^~~~~~~~~~~~
include/linux/local_lock.h:31:9: note: in expansion of macro '__local_lock_irqsave'
   31 |         __local_lock_irqsave(lock, flags)
      |         ^~~~~~~~~~~~~~~~~~~~
mm/memcontrol.c:1960:9: note: in expansion of macro 'local_lock_irqsave'
 1960 |         local_lock_irqsave(&memcg_stock.stock_lock, flags);
      |         ^~~~~~~~~~~~~~~~~~
In file included from include/linux/local_lock.h:5,
                 from include/linux/mmzone.h:24,
                 from include/linux/gfp.h:7,
                 from include/linux/xarray.h:16,
                 from include/linux/radix-tree.h:21:
include/linux/local_lock_internal.h:59:53: note: expected 'local_lock_t *' but argument is of type 'localtry_lock_t *'
   59 | static inline void local_lock_acquire(local_lock_t *l) { }
      |                                       ~~~~~~~~~~~~~~^
include/linux/percpu-defs.h:242:2: error: passing argument 1 of 'local_lock_release' from incompatible pointer type [-Wincompatible-pointer-types]
  242 | ({                                                                      \
      | ~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      |  |
      |  localtry_lock_t *
  243 |         __verify_pcpu_ptr(ptr);                                         \
      |         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  244 |         arch_raw_cpu_ptr(ptr);                                          \
      |         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  245 | })
      | ~~
include/linux/percpu-defs.h:254:27: note: in expansion of macro 'raw_cpu_ptr'
  254 | #define this_cpu_ptr(ptr) raw_cpu_ptr(ptr)
      |                           ^~~~~~~~~~~
include/linux/local_lock_internal.h:122:36: note: in expansion of macro 'this_cpu_ptr'
  122 |                 local_lock_release(this_cpu_ptr(lock));         \
      |                                    ^~~~~~~~~~~~
include/linux/local_lock.h:52:9: note: in expansion of macro '__local_unlock_irqrestore'
   52 |         __local_unlock_irqrestore(lock, flags)
      |         ^~~~~~~~~~~~~~~~~~~~~~~~~
mm/memcontrol.c:1962:9: note: in expansion of macro 'local_unlock_irqrestore'
 1962 |         local_unlock_irqrestore(&memcg_stock.stock_lock, flags);
      |         ^~~~~~~~~~~~~~~~~~~~~~~
include/linux/local_lock_internal.h:61:53: note: expected 'local_lock_t *' but argument is of type 'localtry_lock_t *'
   61 | static inline void local_lock_release(local_lock_t *l) { }
      |                                       ~~~~~~~~~~~~~~^

Caused by commits

  0aaddfb06882 ("locking/local_lock: Introduce localtry_lock_t")
  01d37228d331 ("memcg: Use trylock to access memcg stock_lock.")

interacting with commit

  885aa5fe7b1d ("memcg: drain obj stock on cpu hotplug teardown")

from the mm-hotfixes tree.

I applied the following merge fix patch.

From: Stephen Rothwell <sfr@canb.auug.org.au>
Date: Wed, 12 Mar 2025 14:18:03 +1100
Subject: [PATCH] fix up for "memcg: Use trylock to access memcg stock_lock"

interacting with "memcg: drain obj stock on cpu hotplug teardown" from
the mm-hotfixes tree.

Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
---
 mm/memcontrol.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/mm/memcontrol.c b/mm/memcontrol.c
index 8f88b8dd8097..87544df4c3b8 100644
--- a/mm/memcontrol.c
+++ b/mm/memcontrol.c
@@ -1957,9 +1957,9 @@ static int memcg_hotplug_cpu_dead(unsigned int cpu)
 	stock = &per_cpu(memcg_stock, cpu);
 
 	/* drain_obj_stock requires stock_lock */
-	local_lock_irqsave(&memcg_stock.stock_lock, flags);
+	localtry_lock_irqsave(&memcg_stock.stock_lock, flags);
 	old = drain_obj_stock(stock);
-	local_unlock_irqrestore(&memcg_stock.stock_lock, flags);
+	localtry_unlock_irqrestore(&memcg_stock.stock_lock, flags);
 
 	drain_stock(stock);
 	obj_cgroup_put(old);
-- 
2.45.2

-- 
Cheers,
Stephen Rothwell

[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 488 bytes --]

^ permalink raw reply related	[flat|nested] 103+ messages in thread
* linux-next: build failure after merge of the bpf-next tree
@ 2025-03-19  2:33 Stephen Rothwell
  2025-03-19  2:46 ` Alexei Starovoitov
  2025-03-19  5:03 ` Uros Bizjak
  0 siblings, 2 replies; 103+ messages in thread
From: Stephen Rothwell @ 2025-03-19  2:33 UTC (permalink / raw)
  To: Daniel Borkmann, Alexei Starovoitov, Andrii Nakryiko,
	Andrew Morton
  Cc: Uros Bizjak, bpf, Networking, Linux Kernel Mailing List,
	Linux Next Mailing List

[-- Attachment #1: Type: text/plain, Size: 3434 bytes --]

Hi all,

After merging the bpf-next tree, today's linux-next build (x86_64
allmodconfig) failed like this:

In file included from include/asm-generic/percpu.h:7,
                 from arch/x86/include/asm/percpu.h:630,
                 from arch/x86/include/asm/preempt.h:6,
                 from include/linux/preempt.h:79,
                 from include/linux/smp.h:116,
                 from kernel/locking/qspinlock.c:16:
kernel/locking/qspinlock.h: In function 'decode_tail':
include/linux/percpu-defs.h:219:45: error: initialization from pointer to non-enclosed address space
  219 |         const void __percpu *__vpp_verify = (typeof((ptr) + 0))NULL;    \
      |                                             ^
include/linux/percpu-defs.h:237:9: note: in expansion of macro '__verify_pcpu_ptr'
  237 |         __verify_pcpu_ptr(ptr);                                         \
      |         ^~~~~~~~~~~~~~~~~
kernel/locking/qspinlock.h:67:16: note: in expansion of macro 'per_cpu_ptr'
   67 |         return per_cpu_ptr(&qnodes[idx].mcs, cpu);
      |                ^~~~~~~~~~~
include/linux/percpu-defs.h:219:45: note: expected 'const __seg_gs void *' but pointer is of type 'struct mcs_spinlock *'
  219 |         const void __percpu *__vpp_verify = (typeof((ptr) + 0))NULL;    \
      |                                             ^
include/linux/percpu-defs.h:237:9: note: in expansion of macro '__verify_pcpu_ptr'
  237 |         __verify_pcpu_ptr(ptr);                                         \
      |         ^~~~~~~~~~~~~~~~~
kernel/locking/qspinlock.h:67:16: note: in expansion of macro 'per_cpu_ptr'
   67 |         return per_cpu_ptr(&qnodes[idx].mcs, cpu);
      |                ^~~~~~~~~~~
kernel/locking/qspinlock.c: In function 'native_queued_spin_lock_slowpath':
kernel/locking/qspinlock.c:285:41: error: passing argument 2 of 'decode_tail' from pointer to non-enclosed address space
  285 |                 prev = decode_tail(old, qnodes);
      |                                         ^~~~~~
In file included from kernel/locking/qspinlock.c:30:
kernel/locking/qspinlock.h:62:79: note: expected 'struct qnode *' but argument is of type '__seg_gs struct qnode *'
   62 | static inline __pure struct mcs_spinlock *decode_tail(u32 tail, struct qnode *qnodes)
      |                                                                 ~~~~~~~~~~~~~~^~~~~~
In file included from kernel/locking/qspinlock.c:401:
kernel/locking/qspinlock.c: In function '__pv_queued_spin_lock_slowpath':
kernel/locking/qspinlock.c:285:41: error: passing argument 2 of 'decode_tail' from pointer to non-enclosed address space
  285 |                 prev = decode_tail(old, qnodes);
      |                                         ^~~~~~
kernel/locking/qspinlock.h:62:79: note: expected 'struct qnode *' but argument is of type '__seg_gs struct qnode *'
   62 | static inline __pure struct mcs_spinlock *decode_tail(u32 tail, struct qnode *qnodes)
      |                                                                 ~~~~~~~~~~~~~~^~~~~~

Caused by the resilient-queued-spin-lock branch of the bpf-next tree
interacting with the "Enable strict percpu address space checks" series
form the mm-stable tree.

I don't know why this happens, but reverting that branch inf the bpf-next
tree makes the failure go away, so I have done that for today.

-- 
Cheers,
Stephen Rothwell

[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 488 bytes --]

^ permalink raw reply	[flat|nested] 103+ messages in thread

end of thread, other threads:[~2025-03-21  7:15 UTC | newest]

Thread overview: 103+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2017-12-13  1:32 linux-next: build failure after merge of the bpf-next tree Stephen Rothwell
2017-12-13  1:47 ` Alexei Starovoitov
  -- strict thread matches above, loose matches on Subject: below --
2018-09-07  0:19 Stephen Rothwell
2018-09-07  0:22 ` Alexei Starovoitov
2018-09-07  5:21   ` Björn Töpel
2018-09-07  5:45     ` Alexei Starovoitov
2018-10-03  3:18 Stephen Rothwell
2018-10-03  5:29 ` Joe Stringer
2019-02-28  1:31 Stephen Rothwell
2019-02-28  2:18 ` Alexei Starovoitov
2019-04-18  1:57 Stephen Rothwell
2019-07-01  4:57 Stephen Rothwell
2019-07-01  5:01 ` Stephen Rothwell
2020-07-14  2:22 Stephen Rothwell
2020-07-14  6:16 ` Jiri Olsa
2020-07-14  8:31   ` Jiri Olsa
2020-07-14  9:19     ` Geert Uytterhoeven
2020-08-21  1:11 Stephen Rothwell
2020-08-25  1:20 ` Stephen Rothwell
2020-08-25  1:25   ` Alexei Starovoitov
2020-08-25  3:04     ` Stephen Rothwell
2020-08-25  3:27       ` Alexei Starovoitov
2020-08-25  6:50         ` Stephen Rothwell
2020-08-25 14:33           ` Alexei Starovoitov
2020-08-25 21:10             ` Stephen Rothwell
2020-08-25 22:34               ` Alexei Starovoitov
2020-08-25 23:09                 ` Stephen Rothwell
2020-09-08  3:08 Stephen Rothwell
2020-09-08 17:54 ` Andrii Nakryiko
2020-12-01  8:07 Stephen Rothwell
2020-12-01 14:55 ` Daniel Borkmann
2021-03-11  0:47 Stephen Rothwell
2021-03-11  6:47 ` Björn Töpel
2021-03-12  1:00   ` Stephen Rothwell
2021-03-26  1:18     ` Stephen Rothwell
2021-08-26  1:50 Stephen Rothwell
2021-08-26  2:01 ` Daniel Xu
2021-09-14  1:37 Stephen Rothwell
2021-09-14 23:25 ` Andrii Nakryiko
2021-09-14 23:38   ` Stephen Rothwell
2021-09-14 23:40     ` Andrii Nakryiko
2021-09-14 23:59       ` Stephen Rothwell
2021-09-15  1:27         ` Alexei Starovoitov
2021-12-03  0:15 Stephen Rothwell
2022-02-09  0:21 Stephen Rothwell
2022-04-19  1:56 Stephen Rothwell
2022-04-21  0:32 ` Stephen Rothwell
2022-04-21  9:45   ` Daniel Borkmann
2022-04-21 10:40     ` Maciej Fijalkowski
2022-07-20  1:59 Stephen Rothwell
2022-07-20  3:42 ` Alexei Starovoitov
2022-07-20  3:44   ` Stanislav Fomichev
2023-03-19 23:26 Stephen Rothwell
2023-03-20 12:07 ` Alexander Lobakin
2023-03-21 22:35   ` Stephen Rothwell
2024-06-17 18:15 Mark Brown
2024-06-22  8:17 ` kernel test robot
2024-06-22  8:28 ` kernel test robot
2024-06-25  1:22 ` Thinker Li
2024-06-25 15:54   ` Benjamin Tissoires
2024-06-25 16:03     ` Mark Brown
2024-06-25 17:14     ` Alexei Starovoitov
2024-06-27  7:14       ` Benjamin Tissoires
2024-07-09 23:13 ` Stephen Rothwell
2024-07-18  1:49   ` Stephen Rothwell
2024-07-18  7:42     ` Benjamin Tissoires
2024-08-14  1:18 Stephen Rothwell
2024-08-14  1:25 Stephen Rothwell
2024-08-14  1:41 ` Al Viro
2024-08-14  2:37   ` Stephen Rothwell
2024-08-14 14:50   ` Christian Brauner
2024-08-30  1:32 ` Stephen Rothwell
2024-09-13  3:32 Stephen Rothwell
2024-09-15 23:26 ` Stephen Rothwell
2024-09-13  3:45 Stephen Rothwell
2024-09-13  3:48 ` Stephen Rothwell
2024-09-15 23:27 ` Stephen Rothwell
2024-09-13  3:55 Stephen Rothwell
2024-09-13  4:00 ` Al Viro
2024-09-13  4:26   ` Andrii Nakryiko
2024-09-13  4:43     ` Al Viro
2024-09-15 23:30 ` Stephen Rothwell
2024-10-16  6:05 Stephen Rothwell
2024-10-16 16:25 ` Alexei Starovoitov
2024-10-16 18:35   ` Namhyung Kim
2024-10-16 19:32     ` Alexei Starovoitov
2025-03-12  3:52 Stephen Rothwell
2025-03-19  2:33 Stephen Rothwell
2025-03-19  2:46 ` Alexei Starovoitov
2025-03-19  3:28   ` Stephen Rothwell
2025-03-19 13:37   ` Kumar Kartikeya Dwivedi
2025-03-19 13:43     ` Kumar Kartikeya Dwivedi
2025-03-19 14:36       ` Kumar Kartikeya Dwivedi
2025-03-19 14:55         ` Alexei Starovoitov
2025-03-19 15:11           ` Alexei Starovoitov
2025-03-19 16:06           ` Uros Bizjak
2025-03-19 18:56             ` Alexei Starovoitov
2025-03-19 19:43               ` Uros Bizjak
2025-03-19 23:16                 ` Alexei Starovoitov
2025-03-20  7:49                   ` Uros Bizjak
2025-03-20 23:17                     ` Alexei Starovoitov
2025-03-21  7:15                       ` Uros Bizjak
2025-03-19  5:03 ` Uros Bizjak

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).