Re: [PATCH] proc: register filesystem last

From: Al Viro
Date: Wed Mar 28 2018 - 10:47:55 EST


On Wed, Mar 28, 2018 at 10:26:57AM +0300, Alexey Dobriyan wrote:
> On Wed, Mar 28, 2018 at 05:48:23AM +0100, Al Viro wrote:
> > On Sat, Mar 10, 2018 at 03:06:34AM +0300, Alexey Dobriyan wrote:
> > > On Fri, Mar 09, 2018 at 02:49:38PM -0800, Andrew Morton wrote:
> > > > On Sat, 10 Mar 2018 01:27:09 +0300 Alexey Dobriyan <adobriyan@xxxxxxxxx> wrote:
> > > >
> > > > > As soon as register_filesystem() exits, filesystem can be mounted.
> > > > > It is better to present fully operational /proc.
> > > > >
> > > > > Of course it doesn't matter because /proc is not modular
> > > > > but do it anyway.
> > > > >
> > > > > Drop error check, it should be handled by panicking.
> > > >
> > > > So... shouldn't we add a call to panic()?
> > >
> > > via FS_PANIC flag, yes. I have a patch somewhere.
> > > There are 104 filesystems ATM, some internal, some not.
> > > Some modular, some not.
> >
> > You do realize that the only case when register_filesystem() fails is
> > "another driver has already registered filesystem type with the same
> > name"? Is there *ever* a case when
> > * you could expect that to happen and
> > * panic would be a sane response?
>
> It is for standartizing all those error checks in init sequence by
> removing them. Modules won't have FS_PANIC.

Huh? Again, _when_ is that thing appropriate? To register_filesystem()
failure in non-modular case you need several builtin fs drivers to
try and register fs types with the same name. In this particular
case, you need another in-kernel filesystem called "proc" registered
first.

It's not about extreme oom early in the boot or anything like that -
plain and simple badly modified and misconfigured kernel.