mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
* linux-next: build failure after merge of the sysctl tree
@ 2025-10-30 22:49 Stephen Rothwell
  2025-10-31 13:42 ` Joel Granados
  2025-11-02  8:10 ` Joel Granados
  0 siblings, 2 replies; 10+ messages in thread
From: Stephen Rothwell @ 2025-10-30 22:49 UTC (permalink / raw)
  To: Luis Chamberlain, Kees Cook, Joel Granados
  Cc: Linux Kernel Mailing List, Linux Next Mailing List

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

Hi all,

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

In file included from drivers/tty/n_tty.c:38:
include/linux/jiffies.h:614:40: warning: 'struct ctl_table' declared inside parameter list will not be visible outside of this definition or declaration
  614 | int proc_dointvec_jiffies(const struct ctl_table *table, int dir, void *buffer,
      |                                        ^~~~~~~~~
include/linux/jiffies.h:616:50: warning: 'struct ctl_table' declared inside parameter list will not be visible outside of this definition or declaration
  616 | int proc_dointvec_ms_jiffies_minmax(const struct ctl_table *table, int dir,
      |                                                  ^~~~~~~~~
include/linux/jiffies.h:618:47: warning: 'struct ctl_table' declared inside parameter list will not be visible outside of this definition or declaration
  618 | int proc_dointvec_userhz_jiffies(const struct ctl_table *table, int dir,
      |                                               ^~~~~~~~~
include/linux/jiffies.h:620:43: warning: 'struct ctl_table' declared inside parameter list will not be visible outside of this definition or declaration
  620 | int proc_dointvec_ms_jiffies(const struct ctl_table *table, int dir, void *buffer,
      |                                           ^~~~~~~~~
include/linux/jiffies.h:622:52: warning: 'struct ctl_table' declared inside parameter list will not be visible outside of this definition or declaration
  622 | int proc_doulongvec_ms_jiffies_minmax(const struct ctl_table *table, int dir,
      |                                                    ^~~~~~~~~
In file included from arch/powerpc/kvm/emulate_loadstore.c:10:
include/linux/jiffies.h:614:40: error: 'struct ctl_table' declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  614 | int proc_dointvec_jiffies(const struct ctl_table *table, int dir, void *buffer,
      |                                        ^~~~~~~~~
include/linux/jiffies.h:616:50: error: 'struct ctl_table' declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  616 | int proc_dointvec_ms_jiffies_minmax(const struct ctl_table *table, int dir,
      |                                                  ^~~~~~~~~
include/linux/jiffies.h:618:47: error: 'struct ctl_table' declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  618 | int proc_dointvec_userhz_jiffies(const struct ctl_table *table, int dir,
      |                                               ^~~~~~~~~
include/linux/jiffies.h:620:43: error: 'struct ctl_table' declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  620 | int proc_dointvec_ms_jiffies(const struct ctl_table *table, int dir, void *buffer,
      |                                           ^~~~~~~~~
include/linux/jiffies.h:622:52: error: 'struct ctl_table' declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  622 | int proc_doulongvec_ms_jiffies_minmax(const struct ctl_table *table, int dir,
      |                                                    ^~~~~~~~~
cc1: all warnings being treated as errors
make[5]: *** [scripts/Makefile.build:287: arch/powerpc/kvm/emulate_loadstore.o] Error 1
make[5]: *** Waiting for unfinished jobs....
In file included from drivers/infiniband/hw/mthca/mthca_catas.c:33:
include/linux/jiffies.h:614:40: warning: 'struct ctl_table' declared inside parameter list will not be visible outside of this definition or declaration
  614 | int proc_dointvec_jiffies(const struct ctl_table *table, int dir, void *buffer,
      |                                        ^~~~~~~~~
include/linux/jiffies.h:616:50: warning: 'struct ctl_table' declared inside parameter list will not be visible outside of this definition or declaration
  616 | int proc_dointvec_ms_jiffies_minmax(const struct ctl_table *table, int dir,
      |                                                  ^~~~~~~~~
include/linux/jiffies.h:618:47: warning: 'struct ctl_table' declared inside parameter list will not be visible outside of this definition or declaration
  618 | int proc_dointvec_userhz_jiffies(const struct ctl_table *table, int dir,
      |                                               ^~~~~~~~~
include/linux/jiffies.h:620:43: warning: 'struct ctl_table' declared inside parameter list will not be visible outside of this definition or declaration
  620 | int proc_dointvec_ms_jiffies(const struct ctl_table *table, int dir, void *buffer,
      |                                           ^~~~~~~~~
include/linux/jiffies.h:622:52: warning: 'struct ctl_table' declared inside parameter list will not be visible outside of this definition or declaration
  622 | int proc_doulongvec_ms_jiffies_minmax(const struct ctl_table *table, int dir,
      |                                                    ^~~~~~~~~
make[4]: *** [scripts/Makefile.build:556: arch/powerpc/kvm] Error 2
make[4]: *** Waiting for unfinished jobs....
In file included from drivers/scsi/scsi_netlink.c:8:
include/linux/jiffies.h:614:40: warning: 'struct ctl_table' declared inside parameter list will not be visible outside of this definition or declaration
  614 | int proc_dointvec_jiffies(const struct ctl_table *table, int dir, void *buffer,
      |                                        ^~~~~~~~~
include/linux/jiffies.h:616:50: warning: 'struct ctl_table' declared inside parameter list will not be visible outside of this definition or declaration
  616 | int proc_dointvec_ms_jiffies_minmax(const struct ctl_table *table, int dir,
      |                                                  ^~~~~~~~~
include/linux/jiffies.h:618:47: warning: 'struct ctl_table' declared inside parameter list will not be visible outside of this definition or declaration
  618 | int proc_dointvec_userhz_jiffies(const struct ctl_table *table, int dir,
      |                                               ^~~~~~~~~
include/linux/jiffies.h:620:43: warning: 'struct ctl_table' declared inside parameter list will not be visible outside of this definition or declaration
  620 | int proc_dointvec_ms_jiffies(const struct ctl_table *table, int dir, void *buffer,
      |                                           ^~~~~~~~~
include/linux/jiffies.h:622:52: warning: 'struct ctl_table' declared inside parameter list will not be visible outside of this definition or declaration
  622 | int proc_doulongvec_ms_jiffies_minmax(const struct ctl_table *table, int dir,
      |                                                    ^~~~~~~~~
In file included from kernel/irq/spurious.c:8:
include/linux/jiffies.h:614:40: warning: 'struct ctl_table' declared inside parameter list will not be visible outside of this definition or declaration
  614 | int proc_dointvec_jiffies(const struct ctl_table *table, int dir, void *buffer,
      |                                        ^~~~~~~~~
include/linux/jiffies.h:616:50: warning: 'struct ctl_table' declared inside parameter list will not be visible outside of this definition or declaration
  616 | int proc_dointvec_ms_jiffies_minmax(const struct ctl_table *table, int dir,
      |                                                  ^~~~~~~~~
include/linux/jiffies.h:618:47: warning: 'struct ctl_table' declared inside parameter list will not be visible outside of this definition or declaration
  618 | int proc_dointvec_userhz_jiffies(const struct ctl_table *table, int dir,
      |                                               ^~~~~~~~~
include/linux/jiffies.h:620:43: warning: 'struct ctl_table' declared inside parameter list will not be visible outside of this definition or declaration
  620 | int proc_dointvec_ms_jiffies(const struct ctl_table *table, int dir, void *buffer,
      |                                           ^~~~~~~~~
include/linux/jiffies.h:622:52: warning: 'struct ctl_table' declared inside parameter list will not be visible outside of this definition or declaration
  622 | int proc_doulongvec_ms_jiffies_minmax(const struct ctl_table *table, int dir,
      |                                                    ^~~~~~~~~
In file included from net/sunrpc/auth_gss/gss_krb5_unseal.c:61:
include/linux/jiffies.h:614:40: warning: 'struct ctl_table' declared inside parameter list will not be visible outside of this definition or declaration
  614 | int proc_dointvec_jiffies(const struct ctl_table *table, int dir, void *buffer,
      |                                        ^~~~~~~~~
include/linux/jiffies.h:616:50: warning: 'struct ctl_table' declared inside parameter list will not be visible outside of this definition or declaration
  616 | int proc_dointvec_ms_jiffies_minmax(const struct ctl_table *table, int dir,
      |                                                  ^~~~~~~~~
include/linux/jiffies.h:618:47: warning: 'struct ctl_table' declared inside parameter list will not be visible outside of this definition or declaration
  618 | int proc_dointvec_userhz_jiffies(const struct ctl_table *table, int dir,
      |                                               ^~~~~~~~~
include/linux/jiffies.h:620:43: warning: 'struct ctl_table' declared inside parameter list will not be visible outside of this definition or declaration
  620 | int proc_dointvec_ms_jiffies(const struct ctl_table *table, int dir, void *buffer,
      |                                           ^~~~~~~~~
include/linux/jiffies.h:622:52: warning: 'struct ctl_table' declared inside parameter list will not be visible outside of this definition or declaration
  622 | int proc_doulongvec_ms_jiffies_minmax(const struct ctl_table *table, int dir,
      |                                                    ^~~~~~~~~
In file included from net/netfilter/nf_conntrack_proto_generic.c:7:
include/linux/jiffies.h:614:40: warning: 'struct ctl_table' declared inside parameter list will not be visible outside of this definition or declaration
  614 | int proc_dointvec_jiffies(const struct ctl_table *table, int dir, void *buffer,
      |                                        ^~~~~~~~~
include/linux/jiffies.h:616:50: warning: 'struct ctl_table' declared inside parameter list will not be visible outside of this definition or declaration
  616 | int proc_dointvec_ms_jiffies_minmax(const struct ctl_table *table, int dir,
      |                                                  ^~~~~~~~~
include/linux/jiffies.h:618:47: warning: 'struct ctl_table' declared inside parameter list will not be visible outside of this definition or declaration
  618 | int proc_dointvec_userhz_jiffies(const struct ctl_table *table, int dir,
      |                                               ^~~~~~~~~
include/linux/jiffies.h:620:43: warning: 'struct ctl_table' declared inside parameter list will not be visible outside of this definition or declaration
  620 | int proc_dointvec_ms_jiffies(const struct ctl_table *table, int dir, void *buffer,
      |                                           ^~~~~~~~~
include/linux/jiffies.h:622:52: warning: 'struct ctl_table' declared inside parameter list will not be visible outside of this definition or declaration
  622 | int proc_doulongvec_ms_jiffies_minmax(const struct ctl_table *table, int dir,
      |                                                    ^~~~~~~~~
In file included from net/sunrpc/auth_gss/gss_krb5_seal.c:62:
include/linux/jiffies.h:614:40: warning: 'struct ctl_table' declared inside parameter list will not be visible outside of this definition or declaration
  614 | int proc_dointvec_jiffies(const struct ctl_table *table, int dir, void *buffer,
      |                                        ^~~~~~~~~
include/linux/jiffies.h:616:50: warning: 'struct ctl_table' declared inside parameter list will not be visible outside of this definition or declaration
  616 | int proc_dointvec_ms_jiffies_minmax(const struct ctl_table *table, int dir,
      |                                                  ^~~~~~~~~
include/linux/jiffies.h:618:47: warning: 'struct ctl_table' declared inside parameter list will not be visible outside of this definition or declaration
  618 | int proc_dointvec_userhz_jiffies(const struct ctl_table *table, int dir,
      |                                               ^~~~~~~~~
include/linux/jiffies.h:620:43: warning: 'struct ctl_table' declared inside parameter list will not be visible outside of this definition or declaration
  620 | int proc_dointvec_ms_jiffies(const struct ctl_table *table, int dir, void *buffer,
      |                                           ^~~~~~~~~
include/linux/jiffies.h:622:52: warning: 'struct ctl_table' declared inside parameter list will not be visible outside of this definition or declaration
  622 | int proc_doulongvec_ms_jiffies_minmax(const struct ctl_table *table, int dir,
      |                                                    ^~~~~~~~~
In file included from net/core/hotdata.c:3:
include/linux/jiffies.h:614:40: warning: 'struct ctl_table' declared inside parameter list will not be visible outside of this definition or declaration
  614 | int proc_dointvec_jiffies(const struct ctl_table *table, int dir, void *buffer,
      |                                        ^~~~~~~~~
include/linux/jiffies.h:616:50: warning: 'struct ctl_table' declared inside parameter list will not be visible outside of this definition or declaration
  616 | int proc_dointvec_ms_jiffies_minmax(const struct ctl_table *table, int dir,
      |                                                  ^~~~~~~~~
include/linux/jiffies.h:618:47: warning: 'struct ctl_table' declared inside parameter list will not be visible outside of this definition or declaration
  618 | int proc_dointvec_userhz_jiffies(const struct ctl_table *table, int dir,
      |                                               ^~~~~~~~~
include/linux/jiffies.h:620:43: warning: 'struct ctl_table' declared inside parameter list will not be visible outside of this definition or declaration
  620 | int proc_dointvec_ms_jiffies(const struct ctl_table *table, int dir, void *buffer,
      |                                           ^~~~~~~~~
include/linux/jiffies.h:622:52: warning: 'struct ctl_table' declared inside parameter list will not be visible outside of this definition or declaration
  622 | int proc_doulongvec_ms_jiffies_minmax(const struct ctl_table *table, int dir,
      |                                                    ^~~~~~~~~
make[3]: *** [scripts/Makefile.build:556: arch/powerpc] Error 2
make[3]: *** Waiting for unfinished jobs....
In file included from fs/btrfs/discard.c:3:
include/linux/jiffies.h:614:40: warning: 'struct ctl_table' declared inside parameter list will not be visible outside of this definition or declaration
  614 | int proc_dointvec_jiffies(const struct ctl_table *table, int dir, void *buffer,
      |                                        ^~~~~~~~~
include/linux/jiffies.h:616:50: warning: 'struct ctl_table' declared inside parameter list will not be visible outside of this definition or declaration
  616 | int proc_dointvec_ms_jiffies_minmax(const struct ctl_table *table, int dir,
      |                                                  ^~~~~~~~~
include/linux/jiffies.h:618:47: warning: 'struct ctl_table' declared inside parameter list will not be visible outside of this definition or declaration
  618 | int proc_dointvec_userhz_jiffies(const struct ctl_table *table, int dir,
      |                                               ^~~~~~~~~
include/linux/jiffies.h:620:43: warning: 'struct ctl_table' declared inside parameter list will not be visible outside of this definition or declaration
  620 | int proc_dointvec_ms_jiffies(const struct ctl_table *table, int dir, void *buffer,
      |                                           ^~~~~~~~~
include/linux/jiffies.h:622:52: warning: 'struct ctl_table' declared inside parameter list will not be visible outside of this definition or declaration
  622 | int proc_doulongvec_ms_jiffies_minmax(const struct ctl_table *table, int dir,
      |                                                    ^~~~~~~~~

Caused by commit

  44df6a7821ed ("sysctl: Move jiffies converters to kernel/time/jiffies.c")

I have used the sysctl tree from next-20251030 for today.

-- 
Cheers,
Stephen Rothwell

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

^ permalink raw reply	[flat|nested] 10+ messages in thread
* linux-next: build failure after merge of the sysctl tree
@ 2023-12-06  3:19 Stephen Rothwell
  0 siblings, 0 replies; 10+ messages in thread
From: Stephen Rothwell @ 2023-12-06  3:19 UTC (permalink / raw)
  To: Luis Chamberlain, Eric W. Biederman
  Cc: Thomas Weißschuh, Alexey Gladkov, Linux Kernel Mailing List,
	Linux Next Mailing List

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

Hi all,

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

ipc/mq_sysctl.c:115:24: error: initialization of 'int (*)(struct ctl_table_header *, const struct ctl_table *)' from incompatible pointer type 'int (*)(struct ctl_table_header *, struct ctl_table *)' [-Werror=incompatible-pointer-types]
  115 |         .permissions = mq_permissions,
      |                        ^~~~~~~~~~~~~~
ipc/mq_sysctl.c:115:24: note: (near initialization for 'set_root.permissions')
ipc/mq_sysctl.c:116:26: error: initialization of 'void (*)(struct ctl_table_header *, const struct ctl_table *, kuid_t *, kgid_t *)' from incompatible pointer type 'void (*)(struct ctl_table_header *, struct ctl_table *, kuid_t *, kgid_t *)' [-Werror=incompatible-pointer-types]
  116 |         .set_ownership = mq_set_ownership,
      |                          ^~~~~~~~~~~~~~~~
ipc/mq_sysctl.c:116:26: note: (near initialization for 'set_root.set_ownership')

Caused by commits

  a6dd7f5a787b ("sysctl: treewide: constify ctl_table_root::permissions")
  a56545552ecf ("sysctl: treewide: constify ctl_table_root::set_ownership")

interacting with commit

  7608b6a72ed0 ("sysctl: Allow to change limits for posix messages queues")

from the userns tree.

I have applied the following merge resolution patch.

From: Stephen Rothwell <sfr@canb.auug.org.au>
Date: Wed, 6 Dec 2023 14:12:02 +1100
Subject: [PATCH] fixup for "sysctl: treewide: constify
 ctl_table_root::permissions"

and "sysctl: treewide: constify ctl_table_root::set_ownership" interacting
with "sysctl: Allow to change limits for posix messages queues".

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

diff --git a/ipc/mq_sysctl.c b/ipc/mq_sysctl.c
index 69c709262f5a..850dfc83af23 100644
--- a/ipc/mq_sysctl.c
+++ b/ipc/mq_sysctl.c
@@ -78,7 +78,7 @@ static int set_is_seen(struct ctl_table_set *set)
 }
 
 static void mq_set_ownership(struct ctl_table_header *head,
-			     struct ctl_table *table,
+			     const struct ctl_table *table,
 			     kuid_t *uid, kgid_t *gid)
 {
 	struct ipc_namespace *ns =
@@ -91,7 +91,7 @@ static void mq_set_ownership(struct ctl_table_header *head,
 	*gid = gid_valid(ns_root_gid) ? ns_root_gid : GLOBAL_ROOT_GID;
 }
 
-static int mq_permissions(struct ctl_table_header *head, struct ctl_table *table)
+static int mq_permissions(struct ctl_table_header *head, const struct ctl_table *table)
 {
 	int mode = table->mode;
 	kuid_t ns_root_uid;
-- 
2.40.1

-- 
Cheers,
Stephen Rothwell

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

^ permalink raw reply	[flat|nested] 10+ messages in thread
* linux-next: build failure after merge of the sysctl tree
@ 2022-03-30  0:56 Stephen Rothwell
  2022-03-30 19:00 ` Luis Chamberlain
  2022-04-04  0:26 ` Stephen Rothwell
  0 siblings, 2 replies; 10+ messages in thread
From: Stephen Rothwell @ 2022-03-30  0:56 UTC (permalink / raw)
  To: Luis Chamberlain
  Cc: Wei Xiao, Linux Kernel Mailing List, Linux Next Mailing List

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

Hi all,

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

kernel/sysctl.c:1776:36: error: 'C_A_D' undeclared here (not in a function)
 1776 |                 .data           = &C_A_D,
      |                                    ^~~~~

Caused by commit

  84053cc7ef2f ("ftrace: move sysctl_ftrace_enabled to ftrace.c")

I can't imagine how that happened (though I do note that the whole branch
has been rebased and not tested :-( ).

I have used the sysctl tree from next-20220329 for today.

-- 
Cheers,
Stephen Rothwell

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

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

end of thread, other threads:[~2025-11-02  8:10 UTC | newest]

Thread overview: 10+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2025-10-30 22:49 linux-next: build failure after merge of the sysctl tree Stephen Rothwell
2025-10-31 13:42 ` Joel Granados
2025-11-01 11:16   ` Stephen Rothwell
2025-11-02  8:10 ` Joel Granados
  -- strict thread matches above, loose matches on Subject: below --
2023-12-06  3:19 Stephen Rothwell
2022-03-30  0:56 Stephen Rothwell
2022-03-30 19:00 ` Luis Chamberlain
2022-04-04  0:26 ` Stephen Rothwell
2022-04-04  1:46   ` Luis Chamberlain
2022-04-04  3:39     ` Stephen Rothwell

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®