This is the mail archive of the
gdb@sourceware.org
mailing list for the GDB project.
Re: [help] Linux kernel debug error: Cannot find DIE
>>>>> ">" == æå <zqing1986@gmail.com> writes:
>> Dwarf Error: Cannot find DIE at 0x1634a7 referenced from DIE at
>> 0x17a459 [in module linux-kernel/linux-2.6.32.6/Build/vmlinux]
>> I'm not sure this is caused by incorrect dwarf info generated by
>> open64 compiler or gdb issues, since the gcc build kernel binary is
>> able to debug.
>> I compared the dwarf info output of the two compiler with objdump
>> --dwarf=info , open64's binary is about 1.95GB and gcc's binary is
>> 1.72GB, is that too large?
>> Can someone give any clue on this to determine what is wrong here?
There isn't an easy way to know what has gone wrong here.
It could be incorrect DWARF -- meaning a compiler or (less likely)
linker bug. Or, it could be a gdb bug.
I would debug it by using objdump or readelf to look at the DWARF around
the DIEs mentioned in the error message.
The size of the DWARF is probably not an issue.
At least, this is not the error I would expect in that situation.
Tom