This is the mail archive of the gdb@sourceware.org mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: GDB not able to debug files(dwarf2.0) loaded using add-symbol-file


Below is what 'find_pc_sect_psymtab' returned when i tried to set
breakpoint in the file added with 'add-symbol-file' command.

******************************************
Breakpoint 5, find_pc_sect_psymtab (pc=34148, section=0x9cd4324) at symtab.c:796
796             return (best_pst);

(gdb) p *best_pst
$2 = {next = 0x9ad046c, filename = 0x9ad0518
"net/sunrpc/auth_gss/gss_krb5_mech.c", fullname = 0x0,
 dirname = 0x99f1e78
"/home/joshis/sdk/usr/src/kernel/linux-2.6.11.12", objfile =
0x994b650,
 section_offsets = 0x9951800, textlow = 288, texthigh = 1076066628,
dependencies = 0x0, number_of_dependencies = 0,
 globals_offset = 4596, n_global_syms = 0, statics_offset = 149919,
n_static_syms = 259, symtab = 0x9ccdc50,
 read_symtab = 0x80fbf84 <dwarf2_psymtab_to_symtab>,
read_symtab_private = 0x9a01b44 "óvø", readin = 1 '\001'}

******************************************
Here the pc to be looked is is '34148' . It starts with first object
file i.e vmlinux and checks all the psymtabs for their code range. Now
for the above psymtab, Code range is 'textlow = 288, texthigh =
1076066628' and our PC lies in this. So this is set as best_pst and
function returns without checking the second objfile, which has the
perfect match for this PC. That is why gdb is not able to show the
sources correct.



On 1/4/07, Daniel Jacobowitz <drow@false.org> wrote:
On Wed, Jan 03, 2007 at 03:14:30PM +0530, Sandeep Joshi wrote:
> Memory layout:
>        Entry point: 0x40018000
>        0x40018000 - 0x40060000 is .init
>        0x40060000 - 0x40259644 is .text
>        0x40259650 - 0x40259f78 is __ex_table
>        0x40259f78 - 0x4025a278 is .pci_fixup
>        0x4025a278 - 0x4025d8f0 is __ksymtab
>        0x4025d8f0 - 0x4025ddf0 is __ksymtab_gpl
>        0x4025ddf0 - 0x40266070 is __ksymtab_strings
>        0x40266070 - 0x40266174 is __param
>        0x40268000 - 0x402b8c10 is .data
>        0x402b8c20 - 0x402d995c is .bss
>
> add-symbol-file ~/arm-linux-gdb/bin/test_trap4.out 0x83d8

Then how does that overlap with the symbols for the kernel?  It
shouldn't.

--
Daniel Jacobowitz
CodeSourcery



Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]