[lkml]   [2008]   [Mar]   [14]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
SubjectRe: [2.6.25-rc5-mm1] BUG: spinlock bad magic early during boot
Dave Hansen wrote:
> For those of you new to this thread, here's the initial report:
> I'm pretty sure the root cause of this bug is this commit:
> ACPI: basic initramfs DSDT override support
> 71fc47a9adf8ee89e5c96a47222915c5485ac437
> Which did this hunk:
> @@ -648,6 +654,7 @@ asmlinkage void __init start_kernel(void)
> check_bugs();
> + populate_rootfs(); /* For DSDT override from initramfs
> */
> acpi_early_init(); /* before LAPIC and SMP init */
> /* Do the rest non-__init'ed, we're now alive */
> rest_init();
> ...
> Well, the fs initcalls aren't actually done until during rest_init(),
> including initializing my mnt_writer[] spinlocks. I guess I could
> statically initialize them, but that's not the root of the problem, it's
> just the canary in the coal mine.
> I think the populate_rootfs() call is completely bogus and certainly
> can't be done before the initcalls. But, I don't immediately have any
> better suggestions for you. Can you delay the ACPI init until after the
> fs initcalls are made?

I have made a patch to fix problems with regards to early userspace
calls ( but I don't think it will
solve this bug. So far I had not heard of problems with filesystem

I'm not sure it would be possible to delay acpi_early_init() until after
the fs initcalls. Maybe Len knows. How about trying the opposite: what
is the barely minimum to initialize so that the rootfs can be populated
and read? Would it be possible to have a kind of
early_mnt_writer_initialize() that would do that?

See you,

 \ /
  Last update: 2008-03-14 21:55    [W:0.097 / U:4.124 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site