On Wed, May 13, 2020 at 09:44:40AM -0500, Eric W. Biederman wrote: > Luis Chamberlain <mcgrof@xxxxxxxxxx> writes: > > > On Wed, May 13, 2020 at 08:42:30AM -0500, Eric W. Biederman wrote: > >> Luis Chamberlain <mcgrof@xxxxxxxxxx> writes: > >> > >> > On Tue, May 12, 2020 at 12:40:55PM -0500, Eric W. Biederman wrote: > >> >> Luis Chamberlain <mcgrof@xxxxxxxxxx> writes: > >> >> > >> >> > On Tue, May 12, 2020 at 06:52:35AM -0500, Eric W. Biederman wrote: > >> >> >> Luis Chamberlain <mcgrof@xxxxxxxxxx> writes: > >> >> >> > >> >> >> > +static struct ctl_table fs_base_table[] = { > >> >> >> > + { > >> >> >> > + .procname = "fs", > >> >> >> > + .mode = 0555, > >> >> >> > + .child = fs_table, > >> >> >> > + }, > >> >> >> > + { } > >> >> >> > +}; > >> >> >> ^^^^^^^^^^^^^^^^^^^^^^^^ You don't need this at all. > >> >> >> > > +static int __init fs_procsys_init(void) > >> >> >> > +{ > >> >> >> > + struct ctl_table_header *hdr; > >> >> >> > + > >> >> >> > + hdr = register_sysctl_table(fs_base_table); > >> >> >> ^^^^^^^^^^^^^^^^^^^^^ Please use register_sysctl instead. > >> >> >> AKA > >> >> >> hdr = register_sysctl("fs", fs_table); > >> >> > > >> >> > Ah, much cleaner thanks! > >> >> > >> >> It is my hope you we can get rid of register_sysctl_table one of these > >> >> days. It was the original interface but today it is just a > >> >> compatibility wrapper. > >> >> > >> >> I unfortunately ran out of steam last time before I finished converting > >> >> everything over. > >> > > >> > Let's give it one more go. I'll start with the fs stuff. > >> > >> Just to be clear moving the tables out of kernel/sysctl.c is a related > >> but slightly different problem. > > > > Sure, but also before we go on this crusade, how about we add a few > > helpers: > > > > register_sysctl_kernel() > > register_sysctl_vm() > > register_sysctl_fs() > > register_sysctl_debug() > > register_sysctl_dev() > > Hmm. > > register_sysctl("kernel") > > > That should make it easier to look for these, and shorter. We *know* > > this is a common path, given the size of the existing table. > > I don't really care but one character shorter doesn't look like it > really helps. Not really for grepping and not maintenance as we get a > bunch of trivial one line implementations. Alright, let's skip the helpers for now. Luis