lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:	Mon, 11 Dec 2006 02:17:18 -0800
From:	Andrew Morton <akpm@...l.org>
To:	Al Viro <viro@....linux.org.uk>
Cc:	Andrew MChuck Ebbert <76306.1226@...puserve.com>,
	linux-kernel <linux-kernel@...r.kernel.org>,
	"Linus Torvalds orton <akpm@...l.org>" <torvalds@...l.org>
Subject: Re: [patch] pipe: Don't oops when pipe filesystem isn't mounted

On Mon, 11 Dec 2006 10:03:01 +0000
Al Viro <viro@....linux.org.uk> wrote:

> On Mon, Dec 11, 2006 at 01:47:27AM -0800, Andrew Morton wrote:
> > - populate_rootfs() puts stuff into the filesystem
> > 
> > - we then run initcalls.
> > 
> > - an initcall runs /sbin/hotplug.
> > 
> > We're now running userspace before all the initcalls have been executed. 
> > Hence we're trying to run userspace when potentially none of "grep
> > _initcall */*.c" has been executed.  It isn't a kernel yet...
> 
> That's... arguable.  We certainly don't need lots and lots of initcalls
> to be able to run userland code.  Which ones are missing in your opinion?

I think we should aim to have as many subsystems ready to go as possible -
ideally all of them.  Right now we can potentially run userspace before
AIO, posix-timers, message-queues, BIO, networking, etc are ready to run.

It looks to be pretty easy to fix...

> As for that example, I'd love to see specifics - which driver triggers
> hotplug?  Presumably it happens from an initcall, so we also have something
> fishy here...

I don't know in this case - but firmware loading from a statically-linked
driver is a legit thing to do.

> Said that, I think that pipes should be initialized early.

Judging by the comment there, the only reason we prepare the rootfs prior
to running initcalls is for firmware.  So the sequence

	run initcalls
	populate rootfs
	run initcalls which want to access files

fixes everything?
	
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Powered by blists - more mailing lists