Thread (52 messages) 52 messages, 8 authors, 2024-09-04

Re: [PATCH 18/23] init: open code setting up stdin/stdout/stderr

From: Christoph Hellwig <hch@lst.de>
Date: 2020-07-27 06:48:35
Also in: linux-fsdevel, lkml

On Mon, Jul 27, 2020 at 07:03:22AM +0100, Al Viro wrote:
On Mon, Jul 27, 2020 at 07:46:25AM +0200, Christoph Hellwig wrote:
quoted
On Mon, Jul 27, 2020 at 04:05:34AM +0100, Al Viro wrote:
quoted
On Tue, Jul 14, 2020 at 09:04:22PM +0200, Christoph Hellwig wrote:
quoted
Don't rely on the implicit set_fs(KERNEL_DS) for ksys_open to work, but
instead open a struct file for /dev/console and then install it as FD
0/1/2 manually.
I really hate that one.  Every time we exposed the internal details to
the fucking early init code, we paid for that afterwards.  And this
goes over the top wrt the level of details being exposed.

_IF_ you want to keep that thing, move it to fs/file.c, with dire comment
re that being very special shite for init and likely cause of subsequent
trouble whenever anything gets changed, a gnat farts somewhere, etc.
Err, while I'm all for keeping internals internal, fd_install and
get_unused_fd_flags are exported routines with tons of users of this
pattern all over.
get_file_rcu_many()?  All over the place?  Besides, that's _not_ the normal
pattern for get_unused_fd() - there's a very special reason we don't expect
an error from it here.
Oh well.  I can add an init_dup2, but that should probably go after
the series adding fs/for-init.c or fs/init.c.  I'll skip it for the
current set of fixups and will send it once we have a stable branch for
that.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help