Re: System hangs when kdb is invoked.

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 1/19/06, Rajaram Suryanarayanan <rajaram_linux@xxxxxxxxx> wrote:
>
> I am trying to use and learn kdb.
> I applied the necessary kdb patches to kernel 2.6.14 and recompiled the
> kernel. I booted the kdb enabled kernel with the option kdb=on boot option.
>

You can also set (select Y) during kernel configuration in KDB option
to make it on automatically during boot-time (by the way by-default
its already Y) then you dont need to manually specify the kdb=on
option at boot time !

> As advised in the Rubini's book, I booted on a single user mode.
> Then, whenever I try to invoke the kdb by pressing the "Pause" key, the
> system comes to the kdb prompt and hangs. I am not even able to reboot using
> the sysrq keys.
>

For using kdb single user mode isn't necessary ! There are many docs
available (search google) for the usage of kdb. You can always invike
kdb by pressing Alt + Pause key any time but for this you must be on
the console not in the X environment as you will get the kdb prompt on
the single console only (the console which is currently active) ... I
might be wrong in saying kdb won't get you prompt in X because I
always start X manually (from init level 3) so it might work if you
initially boot using init level 5 .... but I hope it won't give you
prompt on X server !

> Can anybody please suggest me how to invoke kdb ? Or is it like to use kdb,
> we cannot use the pseudo terminal ( ctrl-Alt-F2) etc ? Is it mandatory that
> we have to connect another machine with the debugged machine using serial
> port etc ? ( I have  less knowledge on what is Ascii serial port , pseudo
> terminal etc )
>

The kdb gives prompt on the single terminal/console and there you can
run only commands supported by kdb and obviously kdb does not support
crtl+Alt+F2 :)  Kdb is not a remote debugger (AFAIK) so you can use it
only on the system at which it is running.

You can explicitly invoke kdb prompt through you code using
KDB_ENTER(). For kdb commands see kdb help when in kdb prompt. (like
for rebooting from kdb just give command reboot and it will perform
hard reboot to your system, and for comming back to console run
command go so that kdb will release the break-point and return control
to normal kernel/system)

I hope this help :)

--
Fawad Lateef

--
Kernelnewbies: Help each other learn about the Linux kernel.
Archive:       http://mail.nl.linux.org/kernelnewbies/
FAQ:           http://kernelnewbies.org/faq/



[Index of Archives]     [Newbies FAQ]     [Linux Kernel Mentors]     [Linux Kernel Development]     [IETF Annouce]     [Git]     [Networking]     [Security]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux RAID]     [Linux SCSI]     [Linux ACPI]
  Powered by Linux