Messages in this thread | | | Date | Tue, 14 Feb 2006 04:54:14 -0500 | From | Chuck Ebbert <> | Subject | Bogus objdump output from kernel object files? |
| |
On Sun, 12 Feb 2006 at 01:40:46 -0800, Andrew Morton wrote:
> btw, is something up with `make foo.lst'? It hasn't worked for me for some > time. > > bix:/usr/src/25> make mm/vmscan.lst > MKLST mm/vmscan.lst
Just doing 'objdump -d -r -l -j .text mm/vmscan.o' gives:
mm/vmscan.o: file format elf32-i386
Disassembly of section .text:
00000000 <shrink_slab>: kswapd_init(): ^^^^^^^^^^^^^^ This is actually at offset 0 in .init.text
mm/vmscan.c:176 0: 55 push %ebp shrink_slab(): ^^^^^^^^^^^^^^ OK, back to the right location.
1: 89 e5 mov %esp,%ebp 3: 57 push %edi kswapd_init(): mm/vmscan.c:1801 ^^^^^^^^^^^^^^^^ Now back to kswapd_init() again?!?!
4: 56 push %esi 5: 89 c6 mov %eax,%esi include/asm/processor.h:710 7: 53 push %ebx 8: 83 ec 24 sub $0x24,%esp mm/vmscan.c:180 ^^^^^^^^^^^^^^^
b: 85 c0 test %eax,%eax include/asm/processor.h:710 d: b8 20 00 00 00 mov $0x20,%eax mm/vmscan.c:176 12: 89 55 e4 mov %edx,0xffffffe4(%ebp) mm/vmscan.c:180 15: 0f 44 f0 cmove %eax,%esi include/asm/rwsem.h:126 18: a1 0c 00 00 00 mov 0xc,%eax 19: R_386_32 .data 1d: 89 c2 mov %eax,%edx 1f: 83 c2 01 add $0x1,%edx mm/vmscan.c:1803 ^^^^^^^^^^^^^^^^
22: 7e 09 jle 2d <shrink_slab+0x2d> 24: 0f b1 15 0c 00 00 00 cmpxchg %edx,0xc 27: R_386_32 .data 2b: 75 f0 jne 1d <shrink_slab+0x1d> mm/vmscan.c:183 2d: 85 c0 test %eax,%eax 2f: c7 45 e8 01 00 00 00 movl $0x1,0xffffffe8(%ebp) 36: 0f 88 2c 01 00 00 js 168 <shrink_slab+0x168>
So it is confused somehow. This is with debug info generated by gcc 4.0.2 from Fedora Core 4 (Red Hat 4.0.2-8) and locally-compiled objdump 2.16.1 (there seems to be no binutils update for FC4 available.) -- Chuck "Equations are the Devil's sentences." --Stephen Colbert - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |