All of lore.kernel.org
 help / color / mirror / Atom feed
From: Joel Granados <j.granados@samsung.com>
To: Simon Horman <horms@kernel.org>
Cc: <mcgrof@kernel.org>, Kees Cook <keescook@chromium.org>,
	Iurii Zaikin <yzaikin@google.com>,
	"David S. Miller" <davem@davemloft.net>,
	Eric Dumazet <edumazet@google.com>,
	Jakub Kicinski <kuba@kernel.org>, Paolo Abeni <pabeni@redhat.com>,
	<willy@infradead.org>, <josh@joshtriplett.org>,
	<linux-kernel@vger.kernel.org>, <linux-fsdevel@vger.kernel.org>,
	<netdev@vger.kernel.org>
Subject: Re: [PATCH 05/14] sysctl: Add a size arg to __register_sysctl_table
Date: Fri, 28 Jul 2023 18:08:22 +0200	[thread overview]
Message-ID: <20230728160822.4dh3asnao2l4bdwx@localhost> (raw)
In-Reply-To: <ZMOdqvMfyPkNYBoq@kernel.org>

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

On Fri, Jul 28, 2023 at 12:51:22PM +0200, Simon Horman wrote:
> On Wed, Jul 26, 2023 at 04:06:25PM +0200, Joel Granados wrote:
> > This is part of the effort to remove the sentinel element in the
> > ctl_table arrays. We add a table_size argument to
> > __register_sysctl_table and adjust callers, all of which pass ctl_table
> > pointers and need an explicit call to ARRAY_SIZE.
> > 
> > The new table_size argument does not yet have any effect in the
> > init_header call which is still dependent on the sentinel's presence.
> > table_size *does* however drive the `kzalloc` allocation in
> > __register_sysctl_table with no adverse effects as the allocated memory
> > is either one element greater than the calculated ctl_table array (for
> > the calls in ipc_sysctl.c, mq_sysctl.c and ucount.c) or the exact size
> > of the calculated ctl_table array (for the call from sysctl_net.c and
> > register_sysctl). This approach will allows us to "just" remove the
> > sentinel without further changes to __register_sysctl_table as
> > table_size will represent the exact size for all the callers at that
> > point.
> > 
> > Temporarily implement a size calculation in register_net_sysctl, which
> > is an indirection call for all the network register calls.
> > 
> > Signed-off-by: Joel Granados <j.granados@samsung.com>
> > ---
> >  fs/proc/proc_sysctl.c  | 22 +++++++++++-----------
> >  include/linux/sysctl.h |  2 +-
> >  ipc/ipc_sysctl.c       |  4 +++-
> >  ipc/mq_sysctl.c        |  4 +++-
> >  kernel/ucount.c        |  3 ++-
> >  net/sysctl_net.c       |  8 +++++++-
> >  6 files changed, 27 insertions(+), 16 deletions(-)
> > 
> > diff --git a/fs/proc/proc_sysctl.c b/fs/proc/proc_sysctl.c
> > index fa1438f1a355..8d04f01a89c1 100644
> > --- a/fs/proc/proc_sysctl.c
> > +++ b/fs/proc/proc_sysctl.c
> > @@ -1354,27 +1354,20 @@ static struct ctl_dir *sysctl_mkdir_p(struct ctl_dir *dir, const char *path)
> >   */
> >  struct ctl_table_header *__register_sysctl_table(
> >  	struct ctl_table_set *set,
> > -	const char *path, struct ctl_table *table)
> > +	const char *path, struct ctl_table *table, size_t table_size)
> 
> Hi Joel,
> 
> Please consider adding table_size to the kernel doc for this function.
Good catch. Will do for V2.
> 
> ...

-- 

Joel Granados

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 659 bytes --]

  reply	other threads:[~2023-07-28 16:08 UTC|newest]

Thread overview: 51+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <CGME20230726140648eucas1p29a92c80fb28550e2087cd0ae190d29bd@eucas1p2.samsung.com>
2023-07-26 14:06 ` [PATCH 00/14] sysctl: Add a size argument to register functions in sysctl Joel Granados
     [not found]   ` <CGME20230726140650eucas1p1f5b2aa9dd8f90989c881f0a2e682b9eb@eucas1p1.samsung.com>
2023-07-26 14:06     ` [PATCH 01/14] sysctl: Prefer ctl_table_header in proc_sysctl Joel Granados
     [not found]   ` <CGME20230726140652eucas1p2a2ac2dd74986bd9ace8380d6f51024ff@eucas1p2.samsung.com>
2023-07-26 14:06     ` [PATCH 02/14] sysctl: Use ctl_table_header in list_for_each_table_entry Joel Granados
     [not found]   ` <CGME20230726140653eucas1p2e234b7cd0af5dc506bd27399b84292a6@eucas1p2.samsung.com>
2023-07-26 14:06     ` [PATCH 03/14] sysctl: Add ctl_table_size to ctl_table_header Joel Granados
2023-07-28 10:48       ` Simon Horman
2023-07-31 12:10         ` Joel Granados
     [not found]   ` <CGME20230726140655eucas1p1c71c8de9edc8441b5262c936731b91a2@eucas1p1.samsung.com>
2023-07-26 14:06     ` [PATCH 04/14] sysctl: Add size argument to init_header Joel Granados
     [not found]   ` <CGME20230726140656eucas1p26cd9da21663d25b51dda75258aaa3b55@eucas1p2.samsung.com>
2023-07-26 14:06     ` [PATCH 05/14] sysctl: Add a size arg to __register_sysctl_table Joel Granados
2023-07-28 10:51       ` Simon Horman
2023-07-28 16:08         ` Joel Granados [this message]
     [not found]   ` <CGME20230726140659eucas1p2c3cd9f57dd13c71ddeb78d2480587e72@eucas1p2.samsung.com>
2023-07-26 14:06     ` [PATCH 06/14] sysctl: Add size to register_sysctl Joel Granados
2023-07-26 17:58       ` Luis Chamberlain
2023-07-27 12:22         ` Joel Granados
2023-07-27 12:22           ` Joel Granados
2023-07-27 15:42           ` Luis Chamberlain
2023-07-27 15:42             ` Luis Chamberlain
2023-07-28  7:41             ` Joel Granados
2023-07-28  7:41               ` Joel Granados
     [not found]   ` <CGME20230726140700eucas1p1e6b16e884362ebec50f6712b3f11a533@eucas1p1.samsung.com>
2023-07-26 14:06     ` [PATCH 07/14] sysctl: Add size arg to __register_sysctl_init Joel Granados
2023-07-28 10:56       ` Simon Horman
2023-07-28 16:11         ` Joel Granados
     [not found]   ` <CGME20230726140702eucas1p20c75fc21d675ea267dd2ad4ebd6e60b4@eucas1p2.samsung.com>
2023-07-26 14:06     ` [PATCH 08/14] sysctl: Add size to register_net_sysctl function Joel Granados
     [not found]   ` <CGME20230726140703eucas1p2786577bcc67d5ae434671dac11870c60@eucas1p2.samsung.com>
2023-07-26 14:06     ` [PATCH 09/14] ax.25: Update to register_net_sysctl_sz Joel Granados
2023-07-26 18:00       ` Luis Chamberlain
2023-07-27 12:31         ` Joel Granados
2023-07-27 12:31           ` Joel Granados
2023-07-27 15:44           ` Luis Chamberlain
2023-07-28  7:35             ` Joel Granados
2023-07-28  7:35               ` Joel Granados
2023-07-28 18:16               ` Luis Chamberlain
2023-07-31  7:09                 ` Joel Granados
2023-07-31  7:09                   ` Joel Granados
2023-07-27 15:38         ` Joel Granados
2023-07-27 15:38           ` Joel Granados
2023-07-27 15:50           ` Luis Chamberlain
     [not found]   ` <CGME20230726140706eucas1p1b11e5f0bd17f0de19af9608cbd8d17f3@eucas1p1.samsung.com>
2023-07-26 14:06     ` [PATCH 10/14] netfilter: " Joel Granados
2023-07-26 14:06       ` [Bridge] " Joel Granados
2023-07-26 18:01       ` Luis Chamberlain
2023-07-26 18:01         ` [Bridge] " Luis Chamberlain
     [not found]   ` <CGME20230726140709eucas1p2033d64aec69a1962fd7e64c57ad60adc@eucas1p2.samsung.com>
2023-07-26 14:06     ` [PATCH 11/14] networking: " Joel Granados
2023-07-26 18:05       ` Luis Chamberlain
2023-07-27  0:33         ` David Ahern
2023-07-27 12:33         ` Joel Granados
2023-07-28  7:08         ` Joel Granados
     [not found]   ` <CGME20230726140711eucas1p25a947afeef5593e21578f778355db192@eucas1p2.samsung.com>
2023-07-26 14:06     ` [PATCH 12/14] vrf: " Joel Granados
     [not found]   ` <CGME20230726140712eucas1p1bc7b2d150482936d974ceba9c51d7bc4@eucas1p1.samsung.com>
2023-07-26 14:06     ` [PATCH 13/14] sysctl: SIZE_MAX->ARRAY_SIZE in register_net_sysctl Joel Granados
     [not found]   ` <CGME20230726140714eucas1p186bad44daf14c4c8c93f9aaf52deade5@eucas1p1.samsung.com>
2023-07-26 14:06     ` [PATCH 14/14] sysctl: Use size as stopping criteria for list macro Joel Granados
2023-07-26 18:15   ` [PATCH 00/14] sysctl: Add a size argument to register functions in sysctl Luis Chamberlain
2023-07-27 11:43     ` Joel Granados
2023-07-27 15:39       ` Luis Chamberlain
2023-07-28  7:04         ` Joel Granados

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20230728160822.4dh3asnao2l4bdwx@localhost \
    --to=j.granados@samsung.com \
    --cc=davem@davemloft.net \
    --cc=edumazet@google.com \
    --cc=horms@kernel.org \
    --cc=josh@joshtriplett.org \
    --cc=keescook@chromium.org \
    --cc=kuba@kernel.org \
    --cc=linux-fsdevel@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mcgrof@kernel.org \
    --cc=netdev@vger.kernel.org \
    --cc=pabeni@redhat.com \
    --cc=willy@infradead.org \
    --cc=yzaikin@google.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.