From: Christoph Hellwig <hch-jcswGhMUV9g@public.gmane.org> To: Al Viro <viro-RmSDqhL/yNMiFSDQTTA3OLVCufUGDwFn@public.gmane.org>, Linus Torvalds <torvalds-de/tnXTf+JLsfHDXvbKv3WD2FQJk+8+b@public.gmane.org> Cc: Greg Kroah-Hartman <gregkh-hQyY1W1yCW8ekmWlsbkhG0B+6BGkLq7r@public.gmane.org>, "Rafael J. Wysocki" <rafael-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org>, linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org, linux-raid-u79uwXL29TY76Z2rM5mHXA@public.gmane.org, linux-fsdevel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org, linux-api-u79uwXL29TY76Z2rM5mHXA@public.gmane.org Subject: add file system helpers that take kernel pointers for the init code v3 Date: Sun, 26 Jul 2020 09:13:35 +0200 [thread overview] Message-ID: <20200726071356.287160-1-hch@lst.de> (raw) Hi Al and Linus, currently a lot of the file system calls in the early in code (and the devtmpfs kthread) rely on the implicit set_fs(KERNEL_DS) during boot. This is one of the few last remaining places we need to deal with to kill off set_fs entirely, so this series adds new helpers that take kernel pointers. These helpers are in init/ and marked __init and thus will be discarded after bootup. A few also need to be duplicated in devtmpfs, though unfortunately. The series sits on top of my previous "decruft the early init / initrd / initramfs code v2" series. Git tree: git://git.infradead.org/users/hch/misc.git init_path Gitweb: http://git.infradead.org/users/hch/misc.git/shortlog/refs/heads/init_path Changes since v2: - move to fs/for-init.c - reuse the init routines in devtmpfs after refactoring devtmpfsd (and thus the broken error handling in the previous version) - actually use kern_path in a place where user_path_at sneaked back in Changes since v1: - avoid most core VFS changes - renamed the functions and move them to init/ and devtmpfs - drop a bunch of cleanups that can be submitted independently now Diffstat: drivers/base/devtmpfs.c | 54 +++++---- drivers/md/md-autodetect.c | 3 fs/Makefile | 2 fs/for_init.c | 249 ++++++++++++++++++++++++++++++++++++++++++ fs/internal.h | 19 +-- fs/namei.c | 20 +-- fs/namespace.c | 107 ++++++++---------- fs/open.c | 22 +-- include/linux/init_syscalls.h | 18 +++ include/linux/syscalls.h | 66 ----------- init/do_mounts.c | 12 +- init/do_mounts.h | 7 - init/do_mounts_initrd.c | 26 ++-- init/do_mounts_rd.c | 2 init/initramfs.c | 29 ++-- init/main.c | 10 - init/noinitramfs.c | 8 - 17 files changed, 423 insertions(+), 231 deletions(-)
WARNING: multiple messages have this Message-ID (diff)
From: Christoph Hellwig <hch@lst.de> To: Al Viro <viro@zeniv.linux.org.uk>, Linus Torvalds <torvalds@linux-foundation.org> Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>, "Rafael J. Wysocki" <rafael@kernel.org>, linux-kernel@vger.kernel.org, linux-raid@vger.kernel.org, linux-fsdevel@vger.kernel.org, linux-api@vger.kernel.org Subject: add file system helpers that take kernel pointers for the init code v3 Date: Sun, 26 Jul 2020 09:13:35 +0200 [thread overview] Message-ID: <20200726071356.287160-1-hch@lst.de> (raw) Hi Al and Linus, currently a lot of the file system calls in the early in code (and the devtmpfs kthread) rely on the implicit set_fs(KERNEL_DS) during boot. This is one of the few last remaining places we need to deal with to kill off set_fs entirely, so this series adds new helpers that take kernel pointers. These helpers are in init/ and marked __init and thus will be discarded after bootup. A few also need to be duplicated in devtmpfs, though unfortunately. The series sits on top of my previous "decruft the early init / initrd / initramfs code v2" series. Git tree: git://git.infradead.org/users/hch/misc.git init_path Gitweb: http://git.infradead.org/users/hch/misc.git/shortlog/refs/heads/init_path Changes since v2: - move to fs/for-init.c - reuse the init routines in devtmpfs after refactoring devtmpfsd (and thus the broken error handling in the previous version) - actually use kern_path in a place where user_path_at sneaked back in Changes since v1: - avoid most core VFS changes - renamed the functions and move them to init/ and devtmpfs - drop a bunch of cleanups that can be submitted independently now Diffstat: drivers/base/devtmpfs.c | 54 +++++---- drivers/md/md-autodetect.c | 3 fs/Makefile | 2 fs/for_init.c | 249 ++++++++++++++++++++++++++++++++++++++++++ fs/internal.h | 19 +-- fs/namei.c | 20 +-- fs/namespace.c | 107 ++++++++---------- fs/open.c | 22 +-- include/linux/init_syscalls.h | 18 +++ include/linux/syscalls.h | 66 ----------- init/do_mounts.c | 12 +- init/do_mounts.h | 7 - init/do_mounts_initrd.c | 26 ++-- init/do_mounts_rd.c | 2 init/initramfs.c | 29 ++-- init/main.c | 10 - init/noinitramfs.c | 8 - 17 files changed, 423 insertions(+), 231 deletions(-)
next reply other threads:[~2020-07-26 7:13 UTC|newest] Thread overview: 41+ messages / expand[flat|nested] mbox.gz Atom feed top 2020-07-26 7:13 Christoph Hellwig [this message] 2020-07-26 7:13 ` add file system helpers that take kernel pointers for the init code v3 Christoph Hellwig 2020-07-26 7:13 ` [PATCH 01/21] fs: refactor do_mount Christoph Hellwig 2020-07-26 7:13 ` [PATCH 03/21] fs: push the getname from do_rmdir into the callers Christoph Hellwig 2020-07-26 7:13 ` [PATCH 06/21] init: mark create_dev as __init Christoph Hellwig 2020-07-26 7:13 ` [PATCH 07/21] init: add an init_mount helper Christoph Hellwig [not found] ` <20200726071356.287160-1-hch-jcswGhMUV9g@public.gmane.org> 2020-07-26 7:13 ` [PATCH 02/21] fs: refactor ksys_umount Christoph Hellwig 2020-07-26 7:13 ` Christoph Hellwig 2020-07-26 7:13 ` [PATCH 04/21] devtmpfs: refactor devtmpfsd() Christoph Hellwig 2020-07-26 7:13 ` Christoph Hellwig [not found] ` <20200726071356.287160-5-hch-jcswGhMUV9g@public.gmane.org> 2020-07-26 7:43 ` Greg Kroah-Hartman 2020-07-26 7:43 ` Greg Kroah-Hartman 2020-07-26 8:21 ` Christoph Hellwig 2020-07-26 7:13 ` [PATCH 05/21] init: initialize ramdisk_execute_command at compile time Christoph Hellwig 2020-07-26 7:13 ` Christoph Hellwig 2020-07-26 7:13 ` [PATCH 08/21] init: add an init_umount helper Christoph Hellwig 2020-07-26 7:13 ` Christoph Hellwig 2020-07-26 7:13 ` [PATCH 09/21] init: add an init_unlink helper Christoph Hellwig 2020-07-26 7:13 ` Christoph Hellwig 2020-07-26 7:13 ` [PATCH 10/21] init: add an init_rmdir helper Christoph Hellwig 2020-07-26 7:13 ` [PATCH 11/21] init: add an init_chdir helper Christoph Hellwig 2020-07-26 7:13 ` [PATCH 12/21] init: add an init_chroot helper Christoph Hellwig 2020-07-26 7:13 ` [PATCH 13/21] init: add an init_chown helper Christoph Hellwig 2020-07-26 7:13 ` [PATCH 14/21] init: add an init_chmod helper Christoph Hellwig 2020-07-26 7:13 ` [PATCH 15/21] init: add an init_eaccess helper Christoph Hellwig 2020-07-26 7:13 ` [PATCH 16/21] init: add an init_link helper Christoph Hellwig 2020-07-26 7:13 ` [PATCH 17/21] init: add an init_symlink helper Christoph Hellwig 2020-07-26 7:13 ` [PATCH 18/21] init: add an init_mkdir helper Christoph Hellwig 2020-07-26 7:13 ` [PATCH 19/21] init: add an init_mknod helper Christoph Hellwig 2020-07-26 7:13 ` [PATCH 20/21] init: add an init_stat helper Christoph Hellwig 2020-07-26 7:13 ` [PATCH 21/21] init: add an init_utimes helper Christoph Hellwig 2020-07-26 15:49 ` add file system helpers that take kernel pointers for the init code v3 Linus Torvalds [not found] ` <CAHk-=wgq8evViJD9Hnjugq=V0eUAn7K6ZjOP7P7qki-nOTx_jg-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org> 2020-07-26 15:52 ` Christoph Hellwig 2020-07-26 15:52 ` Christoph Hellwig 2020-07-26 16:21 ` Al Viro [not found] ` <20200726162113.GR2786714-3bDd1+5oDREiFSDQTTA3OLVCufUGDwFn@public.gmane.org> 2020-07-26 16:24 ` Christoph Hellwig 2020-07-26 16:24 ` Christoph Hellwig [not found] ` <20200726162426.GA24479-jcswGhMUV9g@public.gmane.org> 2020-07-26 16:26 ` Christoph Hellwig 2020-07-26 16:26 ` Christoph Hellwig [not found] ` <20200726162627.GA24522-jcswGhMUV9g@public.gmane.org> 2020-07-26 16:33 ` Al Viro 2020-07-26 16:33 ` Al Viro
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=20200726071356.287160-1-hch@lst.de \ --to=hch-jcswghmuv9g@public.gmane.org \ --cc=gregkh-hQyY1W1yCW8ekmWlsbkhG0B+6BGkLq7r@public.gmane.org \ --cc=linux-api-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \ --cc=linux-fsdevel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \ --cc=linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \ --cc=linux-raid-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \ --cc=rafael-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org \ --cc=torvalds-de/tnXTf+JLsfHDXvbKv3WD2FQJk+8+b@public.gmane.org \ --cc=viro-RmSDqhL/yNMiFSDQTTA3OLVCufUGDwFn@public.gmane.org \ /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: linkBe 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.