[GIT PULL] sysctl changes for v6.10-rc1

From: Joel Granados
Date: Thu May 16 2024 - 06:03:03 EST


The following changes since commit 4cece764965020c22cff7665b18a012006359095:

Linux 6.9-rc1 (2024-03-24 14:10:05 -0700)

are available in the Git repository at:

git://git.kernel.org/pub/scm/linux/kernel/git/sysctl/sysctl.git tags/sysctl-6.10-rc1

for you to fetch changes up to a35dd3a786f57903151b18275b1eed105084cf72:

sysctl: drop now unnecessary out-of-bounds check (2024-04-24 09:43:54 +0200)

----------------------------------------------------------------
sysctl changes for v6.10-rc1

Summary
* Removed sentinel elements from ctl_table structs in kernel/*

Removing sentinels in ctl_table arrays reduces the build time size and
runtime memory consumed by ~64 bytes per array. Removals for net/, io_uring/,
mm/, ipc/ and security/ are set to go into mainline through their respective
subsystems making the next release the most likely place where the final
series that removes the check for proc_name == NULL will land. This PR adds
to removals already in arch/, drivers/ and fs/.

* Adjusted ctl_table definitions and references to allow constification

Adjustments:
- Removing unused ctl_table function arguments
- Moving non-const elements from ctl_table to ctl_table_header
- Making ctl_table pointers const in ctl_table_root structure

Making the static ctl_table structs const will increase safety by keeping the
pointers to proc_handler functions in .rodata. Though no ctl_tables where
made const in this PR, the ground work for making that possible has started
with these changes sent by Thomas Wei?schuh.

Testing
* These changes went into linux-next after v6.9-rc4; giving it a good month of
testing.

----------------------------------------------------------------
Joel Granados (10):
kernel misc: Remove the now superfluous sentinel elements from ctl_table array
umh: Remove the now superfluous sentinel elements from ctl_table array
ftrace: Remove the now superfluous sentinel elements from ctl_table array
timekeeping: Remove the now superfluous sentinel elements from ctl_table array
seccomp: Remove the now superfluous sentinel elements from ctl_table array
scheduler: Remove the now superfluous sentinel elements from ctl_table array
printk: Remove the now superfluous sentinel elements from ctl_table array
kprobes: Remove the now superfluous sentinel elements from ctl_table array
delayacct: Remove the now superfluous sentinel elements from ctl_table array
bpf: Remove the now superfluous sentinel elements from ctl_table array

Thomas Wei?schuh (5):
sysctl: treewide: drop unused argument ctl_table_root::set_ownership(table)
sysctl: treewide: constify argument ctl_table_root::permissions(table)
sysctl: drop sysctl_is_perm_empty_ctl_table
sysctl: move sysctl type to ctl_table_header
sysctl: drop now unnecessary out-of-bounds check

fs/proc/proc_sysctl.c | 21 +++++++++------------
include/linux/sysctl.h | 25 ++++++++++++-------------
ipc/ipc_sysctl.c | 5 ++---
ipc/mq_sysctl.c | 5 ++---
kernel/acct.c | 1 -
kernel/bpf/syscall.c | 1 -
kernel/delayacct.c | 1 -
kernel/exit.c | 1 -
kernel/hung_task.c | 1 -
kernel/kexec_core.c | 1 -
kernel/kprobes.c | 1 -
kernel/latencytop.c | 1 -
kernel/panic.c | 1 -
kernel/pid_namespace.c | 1 -
kernel/pid_sysctl.h | 1 -
kernel/printk/sysctl.c | 1 -
kernel/reboot.c | 1 -
kernel/sched/autogroup.c | 1 -
kernel/sched/core.c | 1 -
kernel/sched/deadline.c | 1 -
kernel/sched/fair.c | 1 -
kernel/sched/rt.c | 1 -
kernel/sched/topology.c | 1 -
kernel/seccomp.c | 1 -
kernel/signal.c | 1 -
kernel/stackleak.c | 1 -
kernel/sysctl.c | 2 --
kernel/time/timer.c | 1 -
kernel/trace/ftrace.c | 1 -
kernel/trace/trace_events_user.c | 1 -
kernel/ucount.c | 5 ++---
kernel/umh.c | 1 -
kernel/utsname_sysctl.c | 1 -
kernel/watchdog.c | 2 --
net/sysctl_net.c | 3 +--
35 files changed, 28 insertions(+), 67 deletions(-)

--

Joel Granados

Attachment: signature.asc
Description: PGP signature