No luck. Atleast, I am interested to know, if it is working for anyone or there is a bug in kgdb implementation in the kernel. If so, I can cool off for some more days until it gets rectified. <br><br>Thanks,<br>Prabhu<br>
<br><br><div class="gmail_quote">On Fri, May 27, 2011 at 10:06 PM, Dongdong Deng <span dir="ltr">&lt;<a href="mailto:libfetion@gmail.com">libfetion@gmail.com</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">
<div class="im">On Fri, May 20, 2011 at 12:23 PM, Prabhu nath &lt;<a href="mailto:gprabhunath@gmail.com">gprabhunath@gmail.com</a>&gt; wrote:<br>
&gt; Enabling CONFIG_DEBUG_RODATA also didn&#39;t work.<br>
<br>
<br>
</div>I am sorry, the CONFIG_DEBUG_RODATA should be disabled...<br>
<br>
<br>
Could you try to pass full parameters to kgdboc module?<br>
&quot;kgdboc=ttyS0,115200 kgdbwait&quot;<br>
<font color="#888888"><br>
<br>
Dongdong<br>
</font><div><div></div><div class="h5"><br>
<br>
<br>
&gt;<br>
&gt; -Prabhu<br>
&gt;<br>
&gt;<br>
&gt; On Thu, May 19, 2011 at 6:45 AM, Dongdong Deng &lt;<a href="mailto:libfetion@gmail.com">libfetion@gmail.com</a>&gt; wrote:<br>
&gt;&gt;<br>
&gt;&gt; On Wed, May 18, 2011 at 7:23 PM, Prabhu nath &lt;<a href="mailto:gprabhunath@gmail.com">gprabhunath@gmail.com</a>&gt;<br>
&gt;&gt; wrote:<br>
&gt;&gt; &gt; Dear All,<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt;       There is a problem with the KGDB at the very first break point<br>
&gt;&gt; &gt; after<br>
&gt;&gt; &gt; executing the gdb command &quot;target remote /dev/ttyS0&quot; from the host.<br>
&gt;&gt; &gt;       I have verbatim, followed the KGDB document<br>
&gt;&gt; &gt; <a href="http://kernel.org/pub/linux/kernel/people/jwessel/kdb/" target="_blank">http://kernel.org/pub/linux/kernel/people/jwessel/kdb/</a><br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt; Problem Logs:<br>
&gt;&gt; &gt; ---------------------<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt; Details  of my hardware and system software:<br>
&gt;&gt; &gt; -------------------------------------------------------------------<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt; *Host (Development machine): *<br>
&gt;&gt; &gt;                      Intel Pentium IV Machine with Fedora Core 12<br>
&gt;&gt; &gt;                      Linux Version : 2.6.31.5-127.fc12.i686.PAE<br>
&gt;&gt; &gt;                      gdb version : GNU gdb (GDB) Fedora (7.0-3.fc12)<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt; *Target:*<br>
&gt;&gt; &gt;                 Intel Pentium IV Machine with Fedora Core 12<br>
&gt;&gt; &gt;                 Customized Linux Version :  2.6.38<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt; Host is connected to Target via a null modem cable<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt; *Snapshot of .config of linux version 2.6.38 on the target *<br>
&gt;&gt; &gt; *<br>
&gt;&gt; &gt; *<br>
&gt;&gt; &gt; # CONFIG_DEBUG_RODATA is not set<br>
&gt;&gt;<br>
&gt;&gt;<br>
&gt;&gt; Hi Prabhu,<br>
&gt;&gt;<br>
&gt;&gt; The CONFIG_DEBUG_RODATA was suggested to set at KGDB,<br>
&gt;&gt; Could you enable it?<br>
&gt;&gt;<br>
&gt;&gt; CONFIG_DEBUG_RODATA = y<br>
&gt;&gt;<br>
&gt;&gt; Dongdong<br>
&gt;&gt;<br>
&gt;<br>
&gt;&gt;<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt; CONFIG_HAVE_ARCH_KGDB=y<br>
&gt;&gt; &gt; CONFIG_FRAME_POINTER=y<br>
&gt;&gt; &gt; CONFIG_DEBUG_INFO=y<br>
&gt;&gt; &gt; CONFIG_KGDB=y<br>
&gt;&gt; &gt; CONFIG_KGDB_SERIAL_CONSOLE=y<br>
&gt;&gt; &gt; CONFIG_KGDB_LOW_LEVEL_TRAP=y<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt; *Grub config on the target machine*<br>
&gt;&gt; &gt; *<br>
&gt;&gt; &gt; *<br>
&gt;&gt; &gt; title Fedora (2.6.38)<br>
&gt;&gt; &gt;        root (hd0,0)<br>
&gt;&gt; &gt;        kernel /boot/vmlinuz-2.6.38 ro<br>
&gt;&gt; &gt; root=UUID=fb7800fb-cfe7-438d-bc7f-c153ba4353d1  LANG=en_US.UTF-8<br>
&gt;&gt; &gt; SYSFONT=latarcyrheb-sun16 KEYBOARDTYPE=pc<br>
&gt;&gt; &gt; KEYTABLE=us*console=ttyS0,115200n8<br>
&gt;&gt; &gt; kgdboc=ttyS0 kgdbwai*t<br>
&gt;&gt; &gt;        initrd /boot/initrd-2.6.38.img<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt; On power on of the target, linux kernel boots and the logs are seen on<br>
&gt;&gt; &gt; the<br>
&gt;&gt; &gt; minicom console of the host and it will wait for the gdb on the host to<br>
&gt;&gt; &gt; connect. Here is the last 4 lines of the logs seen on the minicom<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt; Serial: 8250/16550 driver, 4 ports, IRQ sharing disabled<br>
&gt;&gt; &gt; serial8250: ttyS0 at I/O 0x3f8 (irq = 4) is a 16550A<br>
&gt;&gt; &gt; 00:06: ttyS0 at I/O 0x3f8 (irq = 4) is a 16550A<br>
&gt;&gt; &gt; kgdb: Registered I/O driver kgdboc.<br>
&gt;&gt; &gt; kgdb: Waiting for connection from remote gdb..<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt; *--- Now I close the minicom console (Ctrl-A X) and start the gdb on the<br>
&gt;&gt; &gt; host. Here is the steps I follow. *<br>
&gt;&gt; &gt; *<br>
&gt;&gt; &gt; *<br>
&gt;&gt; &gt; *On the host machine:*<br>
&gt;&gt; &gt; *<br>
&gt;&gt; &gt; *<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt; [root@localhost kgdb]# gdb vmlinux<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt; GNU gdb (GDB) Fedora (7.0-3.fc12)<br>
&gt;&gt; &gt; Copyright (C) 2009 Free Software Foundation, Inc.<br>
&gt;&gt; &gt; License GPLv3+: GNU GPL version 3 or later<br>
&gt;&gt; &gt; &lt;<a href="http://gnu.org/licenses/gpl.html" target="_blank">http://gnu.org/licenses/gpl.html</a><br>
&gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt; This is free software: you are free to change and redistribute it.<br>
&gt;&gt; &gt; There is NO WARRANTY, to the extent permitted by law.  Type &quot;show<br>
&gt;&gt; &gt; copying&quot;<br>
&gt;&gt; &gt; and &quot;show warranty&quot; for details.<br>
&gt;&gt; &gt; This GDB was configured as &quot;i686-redhat-linux-gnu&quot;.<br>
&gt;&gt; &gt; For bug reporting instructions, please see:<br>
&gt;&gt; &gt; &lt;<a href="http://www.gnu.org/software/gdb/bugs/" target="_blank">http://www.gnu.org/software/gdb/bugs/</a>&gt;...<br>
&gt;&gt; &gt; Reading symbols from /root/kgdb/vmlinux...done.<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt; (gdb) set remotebaud 115200<br>
&gt;&gt; &gt; (gdb) set debug remote 1<br>
&gt;&gt; &gt; (gdb) target remote /dev/ttyS0<br>
&gt;&gt; &gt; Remote debugging using /dev/ttyS0<br>
&gt;&gt; &gt; Sending packet: $qSupported#37...Ack<br>
&gt;&gt; &gt; Packet received:<br>
&gt;&gt; &gt; Packet qSupported (supported-packets) is NOT supported<br>
&gt;&gt; &gt; Sending packet: $Hg0#df...Ack<br>
&gt;&gt; &gt; Packet received: OK<br>
&gt;&gt; &gt; Sending packet: $?#3f...Ack<br>
&gt;&gt; &gt; Packet received: S05<br>
&gt;&gt; &gt; Sending packet: $Hc-1#09...Ack<br>
&gt;&gt; &gt; Packet received: OK<br>
&gt;&gt; &gt; Sending packet: $qC#b4...Ack<br>
&gt;&gt; &gt; Packet received: QC01<br>
&gt;&gt; &gt; Sending packet: $qAttached#8f...Ack<br>
&gt;&gt; &gt; Packet received:<br>
&gt;&gt; &gt; Packet qAttached (query-attached) is NOT supported<br>
&gt;&gt; &gt; Sending packet: $qOffsets#4b...Ack<br>
&gt;&gt; &gt; Packet received:<br>
&gt;&gt; &gt; Sending packet: $g#67...Ack<br>
&gt;&gt; &gt; Packet received:<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt; 36000000ffffffff0abaffff20d98bc06c3f86de783f86de803ac8dd803f86de885747c00202000060000000680000007b00c8dd7b0086deffff0000ffff0000<br>
&gt;&gt; &gt; Sending packet: $mc0475788,1#a4...Ack<br>
&gt;&gt; &gt; Packet received: 0f<br>
&gt;&gt; &gt; Sending packet: $mc0475788,8#ab...Ack<br>
&gt;&gt; &gt; Packet received: 0faef889f6ff0d08<br>
&gt;&gt; &gt; Sending packet: $mc0475788,7#aa...Ack<br>
&gt;&gt; &gt; Packet received: 0faef889f6ff0d<br>
&gt;&gt; &gt; 0xc0475788 in ?? ()<br>
&gt;&gt; &gt; Sending packet: $qSymbol::#5b...Ack<br>
&gt;&gt; &gt; Packet received:<br>
&gt;&gt; &gt; Packet qSymbol (symbol-lookup) is NOT supported<br>
&gt;&gt; &gt; (gdb) s<br>
&gt;&gt; &gt; Cannot find bounds of current function<br>
&gt;&gt; &gt; (gdb)<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt; *Observation:*<br>
&gt;&gt; &gt;                     *1.* Ideally the kernel being debugged should break<br>
&gt;&gt; &gt; at<br>
&gt;&gt; &gt; legitimate address and the corresponding line number should<br>
&gt;&gt; &gt;                         be displayed instead of &quot; 0xc0475788 in ?? ()&quot;.<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt;                     2. On inspecting section header in vmlinux<br>
&gt;&gt; &gt; executable,<br>
&gt;&gt; &gt; I found the .text section address range is from<br>
&gt;&gt; &gt;                         0xC1000000 to 0xC1326e58  and no section&#39;s<br>
&gt;&gt; &gt; contents<br>
&gt;&gt; &gt; associate with the address 0xC0475788.<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt;                     *3.* Hence on single stepping, gdb logs the error<br>
&gt;&gt; &gt; as* &quot;Cannot<br>
&gt;&gt; &gt; find bounds of current function&quot;*<br>
&gt;&gt; &gt; *<br>
&gt;&gt; &gt; *<br>
&gt;&gt; &gt;  Humbly request you to help me in addressing this issue.<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt; Thanks and Regards,<br>
&gt;&gt; &gt; Prabhu<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt; ------------------------------------------------------------------------------<br>
&gt;&gt; &gt; What Every C/C++ and Fortran developer Should Know!<br>
&gt;&gt; &gt; Read this article and learn how Intel has extended the reach of its<br>
&gt;&gt; &gt; next-generation tools to help Windows* and Linux* C/C++ and Fortran<br>
&gt;&gt; &gt; developers boost performance applications - including clusters.<br>
&gt;&gt; &gt; <a href="http://p.sf.net/sfu/intel-dev2devmay" target="_blank">http://p.sf.net/sfu/intel-dev2devmay</a><br>
&gt;&gt; &gt; _______________________________________________<br>
&gt;&gt; &gt; Kgdb-bugreport mailing list<br>
&gt;&gt; &gt; <a href="mailto:Kgdb-bugreport@lists.sourceforge.net">Kgdb-bugreport@lists.sourceforge.net</a><br>
&gt;&gt; &gt; <a href="https://lists.sourceforge.net/lists/listinfo/kgdb-bugreport" target="_blank">https://lists.sourceforge.net/lists/listinfo/kgdb-bugreport</a><br>
&gt;&gt; &gt;<br>
&gt;<br>
&gt;<br>
</div></div></blockquote></div><br>