Re: 2.4 kernels + >=binutils-2.14.90.0.8

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Thiemo Seufer wrote:

The REGINFO looks weird, pointing in the load segment. Maybe readelf -S
tells more (especially if compared wit an earlier working version).

Hmm, well, The readelf -l and -S output from a 2.14.90.0.7-based cross-compiler is attached, along with -l & -S outout from the 2.15.90.0.1.1 (--version reports 2.15.90.0.1) as well for comparison.


The PAX_FLAGS bit comes from a patch added in gentoo for PaX support in binaries. More info on PaX is at http://pax.grsecurity.net. I'm going to rebuild my kernel cross-compiler without that one patch and see what the results are.


--Kumba



-----------------------------------------------



# mips-unknown-linux-gnu-readelf --version GNU readelf 2.14.90.0.7 20031029 Copyright 2003 Free Software Foundation, Inc. This program is free software; you may redistribute it under the terms of the GNU General Public License. This program has absolutely no warranty.



# mips-unknown-linux-gnu-readelf -l vmlinux

Elf file type is EXEC (Executable file)
Entry point 0x88144040
There are 3 program headers, starting at offset 52

Program Headers:
Type Offset VirtAddr PhysAddr FileSiz MemSiz Flg Align
REGINFO 0x1563c0 0x881573c0 0x881573c0 0x00018 0x00018 R 0x4
LOAD 0x001000 0x88002000 0x88002000 0x13ffc0 0x13ffc0 R E 0x1000
LOAD 0x141000 0x88142000 0x88142000 0x2b000 0x52400 RWE 0x1000


Section to Segment mapping:
Segment Sections...
00 .reginfo
01 .text .fixup .kstrtab __ex_table __ksymtab
02 .data.init_task .text.init .data.init .setup.init .initcall.init .data.cacheline_aligned .reginfo .data .bss




# mips-unknown-linux-gnu-readelf -S vmlinux
There are 22 section headers, starting at offset 0x190884:

Section Headers:
[Nr] Name Type Addr Off Size ES Flg Lk Inf Al
[ 0] NULL 00000000 000000 000000 00 0 0 0
[ 1] .text PROGBITS 88002000 001000 137790 00 AX 0 0 32
[ 2] .fixup PROGBITS 88139790 138790 00121c 00 AX 0 0 1
[ 3] .kstrtab PROGBITS 8813a9ac 1399ac 004094 00 A 0 0 4
[ 4] __ex_table PROGBITS 8813ea40 13da40 0016f8 00 A 0 0 4
[ 5] __dbe_table PROGBITS 88140138 13f138 000000 00 A 0 0 1
[ 6] __ksymtab PROGBITS 88140138 13f138 001e88 00 A 0 0 4
[ 7] .data.init_task PROGBITS 88142000 141000 002000 00 WA 0 0 8
[ 8] .text.init PROGBITS 88144000 143000 010bb4 00 AX 0 0 4
[ 9] .data.init PROGBITS 88154bb4 153bb4 000724 00 WA 0 0 4
[10] .setup.init PROGBITS 881552e0 1542e0 0000b8 00 WA 0 0 4
[11] .initcall.init PROGBITS 88155398 154398 00008c 00 WA 0 0 4
[12] .data.cacheline_a PROGBITS 88156000 155000 0013c0 00 WA 0 0 32
[13] .reginfo MIPS_REGINFO 881573c0 1563c0 000018 18 A 0 0 4
[14] .data PROGBITS 88158000 157000 015000 00 WA 0 0 4096
[15] .bss NOBITS 8816d000 16c000 027400 00 WA 0 0 32
[16] .comment PROGBITS 88194400 16c000 0052c6 00 0 0 1
[17] .pdr PROGBITS 00000000 1712c8 01f4e0 00 0 0 4
[18] .mdebug.abi32 PROGBITS 00000000 1907a8 000000 00 0 0 1
[19] .shstrtab STRTAB 00000000 1907a8 0000db 00 0 0 1
[20] .symtab SYMTAB 00000000 190bf4 020510 10 21 da0 4
[21] .strtab STRTAB 00000000 1b1104 021f71 00 0 0 1
Key to Flags:
W (write), A (alloc), X (execute), M (merge), S (strings)
I (info), L (link order), G (group), x (unknown)
O (extra OS processing required) o (OS specific), p (processor specific)





---------------------------------------------------------



# mips-unknown-linux-gnu-readelf --version GNU readelf 2.15.90.0.1 20040303 Copyright 2004 Free Software Foundation, Inc. This program is free software; you may redistribute it under the terms of the GNU General Public License. This program has absolutely no warranty.



# mips-unknown-linux-gnu-readelf -l vmlinux

Elf file type is EXEC (Executable file)
Entry point 0x88144040
There are 3 program headers, starting at offset 52

Program Headers:
Type Offset VirtAddr PhysAddr FileSiz MemSiz Flg Align
REGINFO 0x1573c0 0x881573c0 0x881573c0 0x00018 0x00018 R 0x4
LOAD 0x000000 0x88000000 0x88000000 0x16d000 0x194400 RWE 0x10000
PAX_FLAGS 0x000000 0x00000000 0x00000000 0x00000 0x00000 0x4


Section to Segment mapping:
Segment Sections...
00 .reginfo
01 .text .fixup .kstrtab __ex_table __ksymtab .data.init_task .text.init .data.init .setup.init .initcall.init .data.cacheline_aligned .reginfo .data .bss
02




# mips-unknown-linux-gnu-readelf -S vmlinux
There are 23 section headers, starting at offset 0x19188c:

Section Headers:
[Nr] Name Type Addr Off Size ES Flg Lk Inf Al
[ 0] NULL 00000000 000000 000000 00 0 0 0
[ 1] .text PROGBITS 88002000 002000 137790 00 AX 0 0 32
[ 2] .fixup PROGBITS 88139790 139790 00121c 00 AX 0 0 1
[ 3] .kstrtab PROGBITS 8813a9ac 13a9ac 004094 00 A 0 0 4
[ 4] __ex_table PROGBITS 8813ea40 13ea40 0016f8 00 A 0 0 4
[ 5] __dbe_table PROGBITS 88140138 140138 000000 00 A 0 0 1
[ 6] __ksymtab PROGBITS 88140138 140138 001e88 00 A 0 0 4
[ 7] .data.init_task PROGBITS 88142000 142000 002000 00 WA 0 0 8
[ 8] .text.init PROGBITS 88144000 144000 010bb4 00 AX 0 0 4
[ 9] .data.init PROGBITS 88154bb4 154bb4 000724 00 WA 0 0 4
[10] .setup.init PROGBITS 881552e0 1552e0 0000b8 00 WA 0 0 4
[11] .initcall.init PROGBITS 88155398 155398 00008c 00 WA 0 0 4
[12] .data.cacheline_a PROGBITS 88156000 156000 0013c0 00 WA 0 0 32
[13] .reginfo MIPS_REGINFO 881573c0 1573c0 000018 18 A 0 0 4
[14] .data PROGBITS 88158000 158000 015000 00 WA 0 0 4096
[15] .sbss NOBITS 8816d000 16d000 000000 00 WAp 0 0 4
[16] .bss NOBITS 8816d000 16d000 027400 00 WA 0 0 32
[17] .comment PROGBITS 88194400 16d000 0052c6 00 0 0 1
[18] .pdr PROGBITS 00000000 1722c8 01f4e0 00 0 0 4
[19] .mdebug.abi32 PROGBITS 00000000 1917a8 000000 00 0 0 1
[20] .shstrtab STRTAB 00000000 1917a8 0000e1 00 0 0 1
[21] .symtab SYMTAB 00000000 191c24 020520 10 22 da1 4
[22] .strtab STRTAB 00000000 1b2144 021f71 00 0 0 1
Key to Flags:
W (write), A (alloc), X (execute), M (merge), S (strings)
I (info), L (link order), G (group), x (unknown)
O (extra OS processing required) o (OS specific), p (processor specific)






--
"Such is oft the course of deeds that move the wheels of the world: small hands do them because they must, while the eyes of the great are elsewhere." --Elrond



[Index of Archives]     [Linux MIPS Home]     [LKML Archive]     [Linux ARM Kernel]     [Linux ARM]     [Linux]     [Git]     [Yosemite News]     [Linux SCSI]     [Linux Hams]

  Powered by Linux