On Fri, May 29, 2020 at 07:41:08AM +0000, Luis Chamberlain wrote: > This moves the binfmt_misc sysctl to its own file to help remove > clutter from kernel/sysctl.c. > > Signed-off-by: Luis Chamberlain <mcg...@kernel.org> > --- > fs/binfmt_misc.c | 1 + > kernel/sysctl.c | 7 ------- > 2 files changed, 1 insertion(+), 7 deletions(-) > > diff --git a/fs/binfmt_misc.c b/fs/binfmt_misc.c > index f69a043f562b..656b3f5f3bbf 100644 > --- a/fs/binfmt_misc.c > +++ b/fs/binfmt_misc.c > @@ -821,6 +821,7 @@ static int __init init_misc_binfmt(void) > int err = register_filesystem(&bm_fs_type); > if (!err) > insert_binfmt(&misc_format); > + register_sysctl_empty_subdir("fs", "binfmt_misc"); > return err;
Nit: let's make the dir before registering the filesystem. I can't imagine a realistic situation where userspace is reacting so fast it would actually fail to mount the fs on /proc/sys/fs/binfmt_misc, but why risk it? -Kees > } > > diff --git a/kernel/sysctl.c b/kernel/sysctl.c > index 460532cd5ac8..7714e7b476c2 100644 > --- a/kernel/sysctl.c > +++ b/kernel/sysctl.c > @@ -3042,13 +3042,6 @@ static struct ctl_table fs_table[] = { > .extra1 = SYSCTL_ZERO, > .extra2 = SYSCTL_TWO, > }, > -#if defined(CONFIG_BINFMT_MISC) || defined(CONFIG_BINFMT_MISC_MODULE) > - { > - .procname = "binfmt_misc", > - .mode = 0555, > - .child = sysctl_mount_point, > - }, > -#endif > { > .procname = "pipe-max-size", > .data = &pipe_max_size, > -- > 2.26.2 > -- Kees Cook