[<prev] [next>] [day] [month] [year] [list]
Message-ID: <tqz52ig2b5jas3qqt6jqqek7uwyg64ny5qnwy6gclhgjcy4ltb@s7jiay5vyomg>
Date: Wed, 3 Dec 2025 14:27:31 +0100
From: Joel Granados <joel.granados@...nel.org>
To: Linus Torvalds <torvalds@...ux-foundation.org>
Cc: Kees Cook <kees@...nel.org>, Petr Mladek <pmladek@...e.com>,
Randy Dunlap <rdunlap@...radead.org>, linux-fsdevel@...r.kernel.org, linux-kernel@...r.kernel.org
Subject: [GIT PULL] sysctl changes for v6.19-rc1
Linus:
Seeing that I leaned quite a bit on macros in this PR, I'm working on
the "function only" version here [1]. I believe it is still worth while
merging this in, because it allows Jiffies to move out of sysctl.c (So
at least that bit does not have to go through the review/testing
process)
Best
[1] : https://git.kernel.org/pub/scm/linux/kernel/git/joel.granados/linux.git/log/?h=jag/no-macro-conv
The following changes since commit 3a8660878839faadb4f1a6dd72c3179c1df56787:
Linux 6.18-rc1 (2025-10-12 13:42:36 -0700)
are available in the Git repository at:
git://git.kernel.org/pub/scm/linux/kernel/git/sysctl/sysctl.git tags/sysctl-6.19-rc1
for you to fetch changes up to 564195c1a33c8fc631cd3d306e350b0e3d3e9555:
sysctl: Wrap do_proc_douintvec with the public function proc_douintvec_conv (2025-11-27 15:45:38 +0100)
----------------------------------------------------------------
Summary
* Move jiffies converters out of kernel/sysctl.c
Moved the jiffies converters into kernel/time/jiffies.c and replaced
the pipe-max-size proc_handler converter with a macro based version.
This is all part of the effort to relocate non-sysctl logic out of
kernel/sysctl.c into more relevant subsystems. No functional changes.
* Generalize proc handler converter creation
Removed duplicated sysctl converter logic by consolidating it in
macros. These are used inside sysctl core as well as in pipe.c and
jiffies.c. Converter kernel and user space pointer args are now
automatically const qualified for the convenience of the caller. No
functional changes.
* Miscellaneous
Fixed kernel-doc format warnings, removed unnecessary __user
qualifiers, and moved the nmi_watchdog sysctl into .rodata.
* Testing
This series was run through sysctl selftests/kunit test suite in
x86_64. It went into linux-next after rc2, giving it a good 4/5 weeks
of testing.
----------------------------------------------------------------
Joel Granados (20):
watchdog: move nmi_watchdog sysctl into .rodata
sysctl: Replace void pointer with const pointer to ctl_table
sysctl: Remove superfluous tbl_data param from "dovec" functions
sysctl: Remove superfluous __do_proc_* indirection
sysctl: Indicate the direction of operation with macro names
sysctl: Discriminate between kernel and user converter params
sysctl: Create converter functions with two new macros
sysctl: Create integer converters with one macro
sysctl: Add optional range checking to SYSCTL_INT_CONV_CUSTOM
sysctl: Create unsigned int converter using new macro
sysctl: Add optional range checking to SYSCTL_UINT_CONV_CUSTOM
sysctl: Create macro for user-to-kernel uint converter
sysctl: remove __user qualifier from stack_erasing_sysctl buffer argument
sysctl: Allow custom converters from outside sysctl
sysctl: Move INT converter macros to sysctl header
sysctl: Move UINT converter macros to sysctl header
sysctl: Move jiffies converters to kernel/time/jiffies.c
sysctl: Move proc_doulongvec_ms_jiffies_minmax to kernel/time/jiffies.c
sysctl: Create pipe-max-size converter using sysctl UINT macros
sysctl: Wrap do_proc_douintvec with the public function proc_douintvec_conv
Randy Dunlap (1):
sysctl: fix kernel-doc format warning
fs/pipe.c | 28 +--
include/linux/jiffies.h | 12 +
include/linux/sysctl.h | 157 ++++++++++--
kernel/kstack_erase.c | 2 +-
kernel/sysctl.c | 649 ++++++++++++------------------------------------
kernel/time/jiffies.c | 125 ++++++++++
kernel/watchdog.c | 9 +-
7 files changed, 436 insertions(+), 546 deletions(-)
--
Joel Granados
Download attachment "signature.asc" of type "application/pgp-signature" (660 bytes)
Powered by blists - more mailing lists