kernel debugging using KGDB

Hello,

Does anybody here tried kernel debugging using KGDB on beagleboard?
As I do not have any debugger (HW equipment) with me so want to try KGDB for debugging kernel/kernel module.

Please give some pointers in this regard.

~cnanda

Hello Don,

I was able to do debugging using KGDB on beagleboard.
I have compiled GDB/Insight for ARM to have a graphical GDB interface, and able to set breakpoints and debug linux kernel using that.

Only point where I get stuck that, at the moment, I have only single serial interface on my beagleboard so not able to have console prints and debugging simultaneously.

Adding beagleboard group in CC,

~cnanda

Dear Nanda,

I am trying to make kgdb work on BeagleBoard with Angstrom
distribution.
I have rebuild kernel with kgdb enabled. I have 3 questions:

1) Did you do any additional steps in kernel to link kgdboc with
serial link driver ?
2) Which kernel parameters did you set in bootarg of uBoot ?
3) which gdb did you use on the host ? cross debugger specifically
build for debugging ARM images or standard i386 debugger ?

Any tiny step will be hugely appreciated.
Andrew.

Hi Andrew,

Dear Nanda,

I am trying to make kgdb work on BeagleBoard with Angstrom
distribution.
I have rebuild kernel with kgdb enabled. I have 3 questions:

  1. Did you do any additional steps in kernel to link kgdboc with
    serial link driver ?

No, only enabling KGDB support in kernel should be sufficient enough

  1. Which kernel parameters did you set in bootarg of uBoot ?

setenv bootargs ‘console=ttyS2,115200n8 console=tty0 root=/dev/ram0 rw ramdisk_size=32768 initrd=0x81600000,32M kdgb=ttyS2,115200N8 kgdboc=ttyS2,115200N8 kgdbwait’

  1. which gdb did you use on the host ? cross debugger specifically
    build for debugging ARM images or standard i386 debugger ?

I have used the cross debugger, basically i have cross compiled insight-6.8 for ARM to have graphical interface for GDB

Any tiny step will be hugely appreciated.
Andrew.

hope this helps…

~cnanda

Dear Nanda,
Huge thanks for the quick reply.
Last couple of questions:
Did you use openembedded to build cross-gdb that runs on host ?
If so, which recipe did you use ?

Great thanks in advance.
Andrew

Dear Nanda,
Huge thanks for the quick reply.
Last couple of questions:
Did you use openembedded to build cross-gdb that runs on host ?
If so, which recipe did you use ?

"bitbake gdb-cross" should do it

Hello Nanda.

I was able to build cross debugger for beagleboard by a simple
command:
bitbake gdb-cross

And I could connect it to the target kernel.
But it seems my kernel doesn't include full debug information since
debugger complains:

"Single stepping until exit from function <>, which has no line
number information."

Do you remember which kernel configuration options did you use to
build 'debuggable'
kernel ?

Huge thanks in advance,
Andrew

2010/4/20 Andrew <fat031c@gmail.com>

Hello Nanda.

I was able to build cross debugger for beagleboard by a simple
command:
bitbake gdb-cross

And I could connect it to the target kernel.
But it seems my kernel doesn’t include full debug information since
debugger complains:

“Single stepping until exit from function <>, which has no line
number information.”

Do you remember which kernel configuration options did you use to
build ‘debuggable’
kernel ?

Hi Andrew,

I have not used OE for kernel/GDB compilation.
I have checked-out vanilla kernel for OMAP and compiled it using
No idea about bitbake
~cnanda

ok. Thanks

Hello Nanda,

Thanks, I was able to run cross debugger.
But I can't debug kernel line by line.
Do you remember which configuration options in kernel you used ?

Thanks in advance.
Andrew