Make sure we populate the initroot filesystem late enough
David Woodhouse
dwmw2 at infradead.org
Mon Feb 26 11:00:57 EST 2007
On Mon, 2006-12-11 at 20:59 +0000, Linux Kernel Mailing List wrote:
> Gitweb: http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=8d610dd52dd1da696e199e4b4545f33a2a5de5c6
> Commit: 8d610dd52dd1da696e199e4b4545f33a2a5de5c6
> Parent: 8993780a6e44fb4e7ed34e33458506a775356c6e
> Author: Linus Torvalds <torvalds at woody.osdl.org>
> AuthorDate: Mon Dec 11 12:12:04 2006 -0800
> Committer: Linus Torvalds <torvalds at woody.osdl.org>
> CommitDate: Mon Dec 11 12:12:04 2006 -0800
>
> Make sure we populate the initroot filesystem late enough
>
> We should not initialize rootfs before all the core initializers have
> run. So do it as a separate stage just before starting the regular
> driver initializers.
>
> Signed-off-by: Linus Torvalds <torvalds at osdl.org>
This seems to be what's triggering the apparent memory corruption we've
been seeing recently -- in the case of the Fedora kernel it manifests
itself as a BUG() in cache_alloc_refill() when the pmac ide driver
initialises.
Another report was at http://lkml.org/lkml/2006/12/17/4
We've been seeing it on a Mac Mini too, and I managed to reproduce it on
my shinybook this evening by booting with 'mem=512M'.
One side-effect of this patch is to move the call to free_initrd() much
later in the init sequence, potentially after other memory management
code is assuming it's already been freed.
--
dwmw2
More information about the Linuxppc-dev
mailing list