> > You have to pull the debug output from the kernel's
> > internal usba debug buffer.
> > 
> > From kmdb or "mdb -k", you can use the mdb dcmd
> > ::usba_debug_buf
> 
> Sorry I'm new to Solaris. How can I do this and get
> the debug info, when the kernel hangs/freezes at boot
> when it initialize the ohci module?


Boot the kernel with option "-kv":  edit the GRUB menu entry / 
the line starting with "kernel$ ..." and append the option " -kv";
boot the modified GRUB entry.

When it hangs, try to enter kmdb by typing the "F1" + "a"
keys (press both keys at the same time).  This should drop
you into kmdb; from there you can use the "::usba_debug_buf"
command.


It is possible that due to the system freeze, the keyboard driver
is unable to see the "F1" / "a" keys.  In such a case you could
try to set a breakpoint in the ohci_attach function, then start
the kernel and single step though ohci_attach in the kernel
debug to find out when it hangs.  This works by booting with
options "-kdv", and in kmdb do

    ::bp ohci`ohci_attach
    (This sets a breakpoint in the ohci module's ohci_attach function)

    ::cont
    (This starts the kernel)

    ::step over
    ::step over
    ::step over
    ...
    (This single steps though the ohci_attach function, not stepping into
    subroutines).

Instead of the "::step over" command you can use the
shortcut "[".
 
 
This message posted from opensolaris.org

Reply via email to