Re: [PATCH 11/14] networking: Update to register_net_sysctl_sz
From: Luis Chamberlain <mcgrof@kernel.org>
Date: 2023-07-26 18:05:53
Also in:
linux-rdma, linux-s390, linux-sctp, lkml, mptcp
On Wed, Jul 26, 2023 at 04:06:31PM +0200, Joel Granados wrote:
This is part of the effort to remove the sentinel (last empty) element
from the ctl_table arrays. We update to the new function and pass it the
array size. Care is taken to mirror the NULL assignments with a size of
zero (for the unprivileged users). An additional size function was added
to the following files in order to calculate the size of an array that
is defined in another file:
include/net/ipv6.h
net/ipv6/icmp.c
net/ipv6/route.c
net/ipv6/sysctl_net_ipv6.cSame here as with the other patches, the "why" and size impact should go here. I'll skip mentioning that in the other patches.
quoted hunk ↗ jump to hunk
diff --git a/net/mpls/af_mpls.c b/net/mpls/af_mpls.c index bf6e81d56263..5bad14b3c71e 100644 --- a/net/mpls/af_mpls.c +++ b/net/mpls/af_mpls.c@@ -1396,6 +1396,40 @@ static const struct ctl_table mpls_dev_table[] = { { } }; +static int mpls_platform_labels(struct ctl_table *table, int write, + void *buffer, size_t *lenp, loff_t *ppos); +#define MPLS_NS_SYSCTL_OFFSET(field) \ + (&((struct net *)0)->field) + +static const struct ctl_table mpls_table[] = { + { + .procname = "platform_labels", + .data = NULL, + .maxlen = sizeof(int), + .mode = 0644, + .proc_handler = mpls_platform_labels, + }, + { + .procname = "ip_ttl_propagate", + .data = MPLS_NS_SYSCTL_OFFSET(mpls.ip_ttl_propagate), + .maxlen = sizeof(int), + .mode = 0644, + .proc_handler = proc_dointvec_minmax, + .extra1 = SYSCTL_ZERO, + .extra2 = SYSCTL_ONE, + }, + { + .procname = "default_ttl", + .data = MPLS_NS_SYSCTL_OFFSET(mpls.default_ttl), + .maxlen = sizeof(int), + .mode = 0644, + .proc_handler = proc_dointvec_minmax, + .extra1 = SYSCTL_ONE, + .extra2 = &ttl_max, + }, + { } +};
Unless we hear otherwise from networking folks, I think this move alone should probably go as a separate patch with no functional changes to make the changes easier to review / bisect. Luis