Enabling CONFIG_DEBUG_RODATA also didn&#39;t work. <br><br>-Prabhu<br><br><br><div class="gmail_quote">On Thu, May 19, 2011 at 6:45 AM, 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 Wed, May 18, 2011 at 7:23 PM, Prabhu nath &lt;<a href="mailto:gprabhunath@gmail.com">gprabhunath@gmail.com</a>&gt; wrote:<br>

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