From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 23262 invoked by alias); 27 Sep 2007 15:34:36 -0000 Received: (qmail 23252 invoked by uid 22791); 27 Sep 2007 15:34:35 -0000 X-Spam-Check-By: sourceware.org Received: from va-65-40-217-47.sta.embarqhsd.net (HELO CVAEX1.VERTICAL.COM) (65.40.217.47) by sourceware.org (qpsmtpd/0.31) with ESMTP; Thu, 27 Sep 2007 15:34:33 +0000 Content-class: urn:content-classes:message Subject: No line number info debugging kernel modules with gdb 6.6.90.20070926-cvs (gdb 6.7 branch) MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable Date: Thu, 27 Sep 2007 20:11:00 -0000 Message-ID: <4DD3AF7ECBBC43409BA36508938D01851B00AE@CVAEX1.VERTICAL.COM> From: "Jon Ringle" To: Mailing-List: contact gdb-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-owner@sourceware.org X-SW-Source: 2007-09/txt/msg00234.txt.bz2 Hi, I did a cvs checkout of the 6.7 branch: cvs -d :pserver:anoncvs@sourceware.org:/cvs/src co -r gdb_6_7-branch gdb As I used it to debug a kernel module, I found that gdb could get line number info for my kernel module. On my target: [root@isc1 ~]# grep dstdrv /proc/modules dstdrv 33692 0 - Live 0xbf131000 On my host: ringlej@crossdev:~/WAVE/Build7/Platform/Volcano/os/kernel/linux$ file ../../kernel-modules/dst/dstdrv.ko ../../kernel-modules/dst/dstdrv.ko: ELF 32-bit MSB relocatable, ARM, version 1 (ARM), not stripped ringlej@crossdev:~/WAVE/Build7/Platform/Volcano/os/kernel/linux$ ~/build/armeb-linux-gdb-6.7/gdb/gdb vmlinux GNU gdb 6.6.90.20070926-cvs Copyright (C) 2007 Free Software Foundation, Inc. License GPLv3+: GNU GPL version 3 or later This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law. Type "show copying" and "show warranty" for details. This GDB was configured as "--host=3Di686-pc-linux-gnu --target=3Darmeb-linux"... (gdb) add-symbol-file ../../kernel-modules/dst/dstdrv.ko 0xbf131000 add symbol table from file "../../kernel-modules/dst/dstdrv.ko" at .text_addr =3D 0xbf131000 (y or n) y Reading symbols from /home/ringlej/WAVE/Build7/Platform/Volcano/os/kernel-modules/dst/dstdrv. ko...done. (gdb) directory ../../kernel-modules/dst/ Source directories searched: /home/ringlej/WAVE/Build7/Platform/Volcano/os/kernel/linux-2.6.16.29/../ ../kernel-modules/dst:$cdir:$cwd (gdb) target remote bdilab:2001 Remote debugging using bdilab:2001 cpu_idle () at include/asm/bitops.h:177 177 return (p[nr >> 5] >> (nr & 31)) & 1UL; (gdb) b vert_dst_nopage_mmap Breakpoint 1 at 0xbf1342b4 (gdb) list vert_dst_nopage_mmap No line number known for vert_dst_nopage_mmap. GDB has enough information to set the breakpoint correctly, but can't seem to find line info for the kernel module. Jon