> > 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