Regression 7.0R -> 7-stable?

John Baldwin jhb at freebsd.org
Tue Oct 14 11:39:52 PDT 2008


On Tuesday 14 October 2008 05:53:33 am Gerrit Kühn wrote:
> On Mon, 13 Oct 2008 10:27:40 -0400 John Baldwin <jhb at freebsd.org> wrote
> about Re: Regression 7.0R -> 7-stable?:
> 
> JB> On Monday 13 October 2008 03:09:46 am Gerrit Kühn wrote:
> 
> JB> > JB> Ok, can you run gdb on your kernel.debug and do
> JB> > JB> 'l *0xffffffff804608c0'
> 
> JB> > 0xffffffff804608c0 is in scheduler (/usr/src/sys/vm/vm_glue.c:670).
> JB> > [...lines 665-674...]
> 
> JB> I was afraid of that, it basically means that it finished the entire
> JB> boot process.  
> 
> I already thought so because I saw a grey (not white) cursor afterwards.

Are you sure you aren't using dual consoles somehow with serial being primary?  
If you break into the loader, what does 'show console' show?

> JB> The next step is that init (pid 1) should be scheduled
> JB> and try to execute.  You can maybe add some printf's to the code to
> JB> start up init to see how far it gets.  The routine in question is
> JB> 'start_init()' in sys/kern/init_main.c.
> 
> Let me see...
> I added my first printf in line 619 (and several after that), right after
> the "Need just enough stack..." comment. This was never reached, the
> system hangs before that.
> 
> After that I added printf before and after vfs_mountroot(). Now the things
> runs just a bit further for the first time. I see my new printfs and
> between them the message "Trying to mount root from ufs:/dev/ad0s1a".
> After that come all my printfs I had added before, followed by
> "start_init: trying /sbin/init". Then it hangs again.
> 
> I am a bit puzzled because I did not see the "Trying to mount..." and
> "start_init:..." messages before. Just trying again to boot with the
> same setup hangs in vfs_mountroot() (printf before is displayed, printf
> after not). It appears to me as if the hang is caused by some kind of
> "parallel task", and what I am seeing on the console stops a bit earlier
> or later depending on that.
> As I am seeing this only with the ULE-scheduler: Is the scheduler already
> in action at this point, and may the hang depend on what it is deciding
> to do?

Hmmm, I'm really not sure.  I wonder if you are having some sort of interrupt 
storm.  What if you disable SMP via 'kern.smp.disabled=1' in the loader, does 
that help at all?

-- 
John Baldwin


More information about the freebsd-stable mailing list