Re: [PATCH v3 11/11] sysctl: treewide: constify the ctl_table argument of handlers
Heiko Carstens <[email protected]>
| Newsgroups | org.kernel.vger.lvs-devel,dev.linux.lists.bridge,org.infradead.lists.kexec,org.infradead.lists.linux-arm-kernel,org.infradead.lists.linux-riscv,org.kernel.vger.bpf,org.kernel.vger.linux-fsdevel,org.kernel.vger.linux-hardening,org.kernel.vger.linux-kernel,org.kernel.vger.linux-nfs,org.kernel.vger.linux-perf-users,org.kernel.vger.linux-rdma,org.kernel.vger.linux-s390,org.kernel.vger.linux-sctp,org.kernel.vger.linux-security-module,org.kernel.vger.linux-trace-kernel,org.kernel.vger.linux-xfs,org.kernel.vger.netdev,org.kernel.vger.netfilter-devel,org.ozlabs.lists.linuxppc-dev |
|---|---|
| Message-ID | <[email protected]> |
On Tue, Apr 23, 2024 at 09:54:46AM +0200, Thomas WeiÃschuh wrote:
> Adapt the proc_hander function signature to make it clear that handlers
> are not supposed to modify their ctl_table argument.
>
> This is a prerequisite to moving the static ctl_table structs into
> rodata.
> By migrating all handlers at once a lengthy transition can be avoided.
>
> The patch was mostly generated by coccinelle with the following script:
>
> @@
> identifier func, ctl, write, buffer, lenp, ppos;
> @@
>
> int func(
> - struct ctl_table *ctl,
> + const struct ctl_table *ctl,
> int write, void *buffer, size_t *lenp, loff_t *ppos)
> { ... }
>
> In addition to the scripted changes some other changes are done:
>
> * the typedef proc_handler is adapted
>
> * the prototypes of non-static handler are adapted
>
> * kernel/seccomp.c:{read,write}_actions_logged() and
> kernel/watchdog.c:proc_watchdog_common() are adapted as they need to
> adapted together with the handlers for type-consistency reasons
>
> Signed-off-by: Thomas WeiÃschuh <[email protected]>
...
> arch/s390/appldata/appldata_base.c | 10 ++---
> arch/s390/kernel/debug.c | 2 +-
> arch/s390/kernel/topology.c | 2 +-
> arch/s390/mm/cmm.c | 6 +--
Acked-by: Heiko Carstens <[email protected]> # s390