public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Eric Piel <eric.piel@tremplin-utc.net>
To: Dave Hansen <haveblue@us.ibm.com>
Cc: Tilman Schmidt <tilman@imap.cc>,
	Andrew Morton <akpm@linux-foundation.org>,
	linux-kernel@vger.kernel.org, Thomas Renninger <trenn@suse.de>,
	Len Brown <len.brown@intel.com>,
	Linus Torvalds <torvalds@osdl.org>,
	Christoph Hellwig <hch@infradead.org>,
	Markus Gaugusch <dsdt@gaugusch.at>,
	linux-acpi@vger.kernel.org
Subject: Re: [2.6.25-rc5-mm1] BUG: spinlock bad magic early during boot
Date: Fri, 14 Mar 2008 23:50:37 +0100	[thread overview]
Message-ID: <47DB013D.3060102@tremplin-utc.net> (raw)
In-Reply-To: <1205530551.8167.20.camel@nimitz.home.sr71.net>

Dave Hansen wrote:
> On Fri, 2008-03-14 at 21:51 +0100, Eric Piel wrote:
>> 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?
> 
> I *can* probably do it earlier, maybe even statically, but I think
> you're missing the point a bit here.  We've just been super lucky so far
> that populate_rootfs() doesn't depend on any other initcalls (or at
> least BUG_ON() because of them).  There may be some more buglets hiding
> around.
Actually, each time I look at init/main.c I feel like we are super lucky 
that Linux boots ;-)

> 
> It'd be a shame to have to have "super_early_fs_initcall()" logic for
> every part of the VFS or any other initcall for that matter that you
> might need.  How do we tell all future VFS hackers that they have to do
> this so that the next guy doesn't break it?  I certainly missed it. :)
Well, my point was that actually populate_rootfs() does _very_ little 
with regard to FS manipulation, acpi_find_dsdt_initrd() even less. The 
task of checking that everything needed is available beforehand is 
certainly not the same magnitude as the one of the Danaides as you 
seemed to implied ;-)

The fact is, this patch has been tested a lot, because it's been used by 
several distributions for a long time. I expect that the only potential 
problems are corner cases that are possible to work around.

> 
> We could separate out the initcalls and just have the fs ones run before
> the rest do.  But, I'm not sure what interactions *THAT* might have.
> There are arch-specific initcalls, and I have no idea if the fs init
> code depends on *those*.  That's a lot of code to check.
Yes, we agree on this. That would be crazy :-)

> 
> It is nailed when you the patch says:
> 
> +       /*
> +        * Never do this at home, only the user-space is allowed to open a file.
> +        * The clean way would be to use the firmware loader. But this code must be run
> +        * before there is any userspace available. So we need a static/init firmware
> +        * infrastructure, which doesn't exist yet...
> +        */
> 
> I think requiring FS access this early in the boot processes is just
> broken.  It seems like the author of the patch knew a better way and
> tried to get away with a hack.  I think it backfired. :)
I'm actually the author of this comment... The static/init firmware 
infrastructure that I mentioned was more just about a way to hide the fs 
access in a special part of the kernel, not avoiding it. We used to have 
a different way but it was even uglier: append the DSDT after the 
initramfs, and then access it _directly_. This implies teaching 
populate_rootfs() to not panic when seeing DSDTs and loosing the benefit 
of the compression.

That said, I'm really not against any complete different approach. All 
that is needed is being able to read a file early at boot (the DSDT) 
without having to recompile the kernel each time the file is modified. 
For instance someone had once mentioned modifying the in-kernel DSDT by 
unlinking and relinking the bzimage. If one can show me how to do that 
I'd be happy to implement it...

Eric

  reply	other threads:[~2008-03-14 22:51 UTC|newest]

Thread overview: 116+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-03-11  8:14 2.6.25-rc5-mm1 Andrew Morton
2008-03-11 10:16 ` [Build Faliure] 2.6.25-rc5-mm1 build fails Kamalesh Babulal
2008-03-11 10:56   ` Edward Shishkin
2008-03-11 12:55 ` [Build Failure] 2.6.25-rc5-mm1 Build fails with allmodconfig probe_4drives undefined Kamalesh Babulal
2008-03-11 17:41   ` Andrew Morton
2008-03-11 19:35     ` Bartlomiej Zolnierkiewicz
2008-03-11 18:19   ` Andrew Morton
2008-03-11 19:36     ` Bartlomiej Zolnierkiewicz
2008-03-11 17:09 ` 2.6.25-rc5-mm1 (paravirt/vsmp/no PCI) Randy Dunlap
2008-03-11 18:18   ` Jeremy Fitzhardinge
2008-03-12  0:10     ` Ravikiran G Thirumalai
2008-03-12  1:42       ` Randy Dunlap
2008-03-12  1:51       ` Jeremy Fitzhardinge
2008-03-12  7:14       ` Ingo Molnar
2008-03-11 20:23 ` 2.6.25-rc5-mm1 serge
2008-03-11 20:39   ` 2.6.25-rc5-mm1 Andrew Morton
2008-03-12 19:33     ` 2.6.25-rc5-mm1 Torsten Kaiser
2008-03-12 19:44       ` 2.6.25-rc5-mm1 Andrew Morton
2008-03-12 20:01         ` 2.6.25-rc5-mm1 Torsten Kaiser
2008-03-13 22:05           ` 2.6.25-rc5-mm1 Torsten Kaiser
2008-03-13 22:35             ` 2.6.25-rc5-mm1 Andrew Morton
2008-03-13 23:10               ` 2.6.25-rc5-mm1 Badari Pulavarty
2008-03-21 12:12                 ` 2.6.25-rc5-mm1 Ingo Molnar
2008-03-12  1:14 ` 2.6.25-rc5-mm1 Dave Young
2008-03-12  7:21 ` 2.6.25-rc5-mm1: NO_HZ=Y && PREEMPT_RCU=Y fails to build Laurent Riffard
2008-03-12  7:44   ` Andrew Morton
2008-03-12 21:32     ` Laurent Riffard
2008-03-12 23:43   ` Tilman Schmidt
2008-03-12  9:17 ` [BUILD_FAILURE] 2.6.25-rc5-mm1 build fails at startup_ipi_hook() with randconfig Kamalesh Babulal
2008-03-12 12:55 ` [BUG] 2.6.25-rc5-mm1 kernel panic with "Exception: 501 " on powerpc Kamalesh Babulal
2008-03-12 17:46   ` Andrew Morton
2008-03-12 17:51     ` Matthew Wilcox
2008-03-12 22:26       ` Michael Ellerman
2008-03-12 22:33         ` Matthew Wilcox
2008-03-13 13:02           ` Kamalesh Babulal
2008-03-12 20:40     ` Benjamin Herrenschmidt
2008-03-12 18:14   ` Badari Pulavarty
2008-03-12 18:10 ` 2.6.25-rc5-mm1 - x86_64 boot problem ? Badari Pulavarty
2008-03-12 18:15   ` Andrew Morton
2008-03-13 17:09     ` 2.6.25-rc5-mm1 - x86_64 boot problem with git-sched.patch Badari Pulavarty
2008-03-13 17:40       ` Badari Pulavarty
2008-03-13 17:55         ` Guillaume Chazarain
2008-03-13 18:20           ` Badari Pulavarty
2008-03-12 23:54 ` [2.6.25-rc5-mm1] BUG: spinlock bad magic early during boot Tilman Schmidt
2008-03-13  0:04   ` Andrew Morton
2008-03-13 21:48     ` Dave Hansen
2008-03-13 20:46   ` Dave Hansen
2008-03-14  0:35     ` Tilman Schmidt
2008-03-14 18:03       ` Dave Hansen
2008-03-14 20:06         ` Dave Hansen
2008-03-14 20:20           ` Linus Torvalds
2008-03-14 20:51           ` Eric Piel
2008-03-14 21:35             ` Dave Hansen
2008-03-14 22:50               ` Eric Piel [this message]
2008-03-14 23:29                 ` Dave Hansen
2008-03-15 12:47                   ` Tilman Schmidt
2008-03-15 19:21                     ` Linus Torvalds
2008-03-15 19:42                       ` Éric Piel
2008-03-15 20:19                         ` Linus Torvalds
2008-03-16  0:15                           ` Éric Piel
2008-03-17 17:27                             ` Len Brown
     [not found]                               ` <1205858252.21619.233.camel@queen.suse.de>
2008-03-18 20:32                                 ` Len Brown
2008-03-20 14:28                                   ` Thomas Renninger
2008-03-17 17:59                           ` Len Brown
2008-03-21 13:17                           ` Pavel Machek
2008-03-23 16:00                             ` Dave Hansen
2008-03-24 16:03                               ` Pavel Machek
2008-03-24 17:05                                 ` Eric Piel
2008-03-24 17:19                                   ` Pavel Machek
2008-03-24 17:23                                   ` Dave Hansen
2008-03-27  9:23                               ` Helge Hafting
2008-03-17 18:05                         ` Len Brown
2008-03-16 20:11                     ` Dave Hansen
2008-03-17 12:23                       ` Peter Zijlstra
2008-03-19 23:50                         ` Tilman Schmidt
2008-03-17 17:48                 ` Len Brown
2008-03-13  0:15 ` [2.6.25-rc5-mm1] WARNING: at drivers/base/sys.c:173 Tilman Schmidt
2008-03-13 18:34   ` Greg KH
2008-03-13 19:57     ` Dave Jones
2008-03-13 19:56   ` Dave Jones
2008-03-13 20:27     ` Greg KH
2008-03-14  0:01     ` Tilman Schmidt
2008-03-14  0:44       ` Dave Jones
2008-03-14  0:57       ` Zhao Yakui
2008-03-14  9:58         ` Tilman Schmidt
2008-03-15 12:16         ` Tilman Schmidt
2008-03-13 14:03 ` 2.6.25-rc5-mm1 shutdown crash Helge Hafting
2008-03-13 16:12   ` Andrew Morton
2008-03-25 12:23     ` Helge Hafting
2008-03-13 19:48 ` [2.6.25-rc5-mm1] regression: cannot run Postfix sendmail command as non-root Tilman Schmidt
2008-03-13 22:21   ` Daniel Lezcano
2008-03-14  0:08     ` Tilman Schmidt
2008-03-17 10:44       ` Daniel Lezcano
2008-03-17 12:50         ` Benjamin Thery
2008-03-17 13:35           ` Tilman Schmidt
2008-03-17 13:06         ` Tilman Schmidt
2008-03-17 13:17           ` Daniel Lezcano
2008-03-19 17:52   ` Benjamin Thery
2008-03-19 21:16     ` Andrew Morton
2008-03-19 22:14       ` Benjamin Thery
2008-03-19 22:49       ` David Miller
2008-03-20  8:26         ` Benjamin Thery
2008-03-20 10:21           ` Rafael J. Wysocki
2008-03-20 12:52             ` Pavel Emelyanov
2008-03-20 13:48               ` Benjamin Thery
2008-03-20 14:38                 ` Rafael J. Wysocki
2008-03-19 23:31       ` Tilman Schmidt
2008-03-13 22:07 ` 2.6.25-rc5-mm1: "consolechars" hangs on boot Laurent Riffard
2008-03-13 22:38   ` Andrew Morton
2008-03-14  5:26     ` Oleg Nesterov
2008-03-14 21:06       ` Laurent Riffard
2008-03-15 12:03         ` Oleg Nesterov
2008-03-16 21:38 ` 2.6.25-rc5-mm1 build failure of pcsp.c Mariusz Kozlowski
2008-03-28 22:52 ` 2.6.25-rc5-mm1 sparc64 boot problems due to generic pci_enable_resources() Mariusz Kozlowski
2008-03-28 23:10   ` David Miller
2008-03-29  0:44     ` Benjamin Herrenschmidt

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=47DB013D.3060102@tremplin-utc.net \
    --to=eric.piel@tremplin-utc.net \
    --cc=akpm@linux-foundation.org \
    --cc=dsdt@gaugusch.at \
    --cc=haveblue@us.ibm.com \
    --cc=hch@infradead.org \
    --cc=len.brown@intel.com \
    --cc=linux-acpi@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=tilman@imap.cc \
    --cc=torvalds@osdl.org \
    --cc=trenn@suse.de \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox