Re: [PATCH v2 1/2] sysctl: remove empty dev table

From: Luis Chamberlain
Date: Tue May 30 2023 - 12:42:39 EST


On Mon, May 29, 2023 at 10:04:57PM +0200, Joel Granados wrote:
> On Fri, May 26, 2023 at 03:22:05PM -0700, Luis Chamberlain wrote:
> > Now that all the dev sysctls have been moved out we can remove the
> > dev sysctl base directory. We don't need to create base directories,
> > they are created for you as if using 'mkdir -p' with register_syctl()
> > and register_sysctl_init(). For details refer to sysctl_mkdir_p()
> > usage.
> >
> > We save 90 bytes with this changes:
> >
> > ./scripts/bloat-o-meter vmlinux.2.remove-sysctl-table vmlinux.3-remove-dev-table
> > add/remove: 0/1 grow/shrink: 0/1 up/down: 0/-90 (-90)
> > Function old new delta
> > sysctl_init_bases 111 85 -26
> > dev_table 64 - -64
> > Total: Before=21257057, After=21256967, chg -0.00%
> >
> > Signed-off-by: Luis Chamberlain <mcgrof@xxxxxxxxxx>
> > ---
> > kernel/sysctl.c | 5 -----
> > 1 file changed, 5 deletions(-)
> >
> > diff --git a/kernel/sysctl.c b/kernel/sysctl.c
> > index fa2aa8bd32b6..a7fdb828afb6 100644
> > --- a/kernel/sysctl.c
> > +++ b/kernel/sysctl.c
> > @@ -2344,16 +2344,11 @@ static struct ctl_table debug_table[] = {
> > { }
> > };
> >
> > -static struct ctl_table dev_table[] = {
> > - { }
> > -};
> > -
> > int __init sysctl_init_bases(void)
> > {
> > register_sysctl_init("kernel", kern_table);
> > register_sysctl_init("vm", vm_table);
> > register_sysctl_init("debug", debug_table);
> > - register_sysctl_init("dev", dev_table);
> >
> > return 0;
> > }
> > --
> > 2.39.2
> >
> LGTM.

BTW, please use proper tags like Reviewed-by, and so on even if you use
LGTM so that then if anyone uses things like b4 it can pick the tags for
you.

> But why was dev there to begin with?

I will enhance the commit log to mention that, it was there because
old APIs didn't create the directory for you, and now it is clear it
is not needed. I checked ant he dev table was there since the beginning
of sysctl.c on v2.5.0.

Luis