[Bug 227552] w, uptime i386 coredump in libxo
bugzilla-noreply at freebsd.org
bugzilla-noreply at freebsd.org
Fri May 11 17:30:09 UTC 2018
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=227552
--- Comment #25 from Phil Shafer <phil at freebsd.org> ---
FWIW, here's the diff between unstripped and stripped readelf output:
@@ -10,14 +10,14 @@
Version: 0x1
Entry point address: 0x2e60
Start of program headers: 52 (bytes into file)
- Start of section headers: 287684 (bytes into file)
+ Start of section headers: 96676 (bytes into file)
Flags: 0
Size of this header: 52 (bytes)
Size of program headers: 32 (bytes)
Number of program headers: 5
Size of section headers: 40 (bytes)
- Number of section headers: 39
- Section header string table index: 36
+ Number of section headers: 27
+ Section header string table index: 26
Elf file type is DYN (Shared object file)
Entry point 0x2e60
@@ -28,17 +28,17 @@
LOAD 0x000000 0x00000000 0x00000000 0x171f8 0x171f8 R E 0x1000
LOAD 0x0171f8 0x000181f8 0x000181f8 0x005fc 0x0064c RW 0x1000
DYNAMIC 0x0172f4 0x000182f4 0x000182f4 0x000d8 0x000d8 RW 0x4
- TLS 0x0171f8 0x000181f8 0x000181f8 0x00000 0x00658 R 0x8
+ TLS 0x0171f8 0x000187f4 0x000187f4 0x00000 0x00050 R 0x8
GNU_STACK 0x000000 0x00000000 0x00000000 0x00000 0x00000 RW 0x4
Section to Segment mapping:
Segment Sections...
- 00 .hash .gnu.hash .dynsym .dynstr .gnu.version .gnu.version_r .rel.dyn
.rel.plt .init .plt .text .fini .rodata .eh_frame .comment .debug_pubnames
.debug_info .debug_abbrev .debug_line .debug_frame .debug_str .debug_loc
.debug_macinfo .debug_pubtypes .debug_ranges .shstrtab .symtab .strtab
+ 00 .hash .gnu.hash .dynsym .dynstr .gnu.version .gnu.version_r .rel.dyn
.rel.plt .init .plt .text .fini .rodata .eh_frame .comment .shstrtab
01 .ctors .dtors .jcr .data.rel.ro .dynamic .got .got.plt .data .bss
02 .dynamic
- 03 .tbss .ctors .dtors .jcr .data.rel.ro .dynamic .got .got.plt .data
.bss
+ 03 .bss
04
-There are 39 section headers, starting at offset 0x463c4:
+There are 27 section headers, starting at offset 0x179a4:
Section Headers:
[Nr] Name Type Addr Off Size ES Flg Lk Inf
Al
@@ -49,8 +49,8 @@
[ 4] .dynstr STRTAB 00001648 001648 0009c2 00 A 0 0
1
[ 5] .gnu.version SUNW_versym 0000200a 00200a 000188 02 A 3 0
2
[ 6] .gnu.version_r SUNW_verneed 00002194 002194 000030 00 A 4 1
4
- [ 7] .rel.dyn REL 000021c4 0021c4 000438 08 A 3 0
4
- [ 8] .rel.plt REL 000025fc 0025fc 0002c0 08 A 3 10
4
+ [ 7] .rel.dyn REL 000021c4 0021c4 000438 08 AI 3 0
4
+ [ 8] .rel.plt REL 000025fc 0025fc 0002c0 08 AI 3 10
4
[ 9] .init PROGBITS 000028bc 0028bc 000011 00 AX 0 0
4
[10] .plt PROGBITS 000028d0 0028d0 000590 04 AX 0 0
4
[11] .text PROGBITS 00002e60 002e60 0129c0 00 AX 0 0
16
@@ -68,19 +68,7 @@
[23] .data PROGBITS 00018578 017578 00027c 00 WA 0 0
4
[24] .bss NOBITS 000187f4 0177f4 000050 00 WA 0 0
4
[25] .comment PROGBITS 00000000 0177f4 0000e6 01 MS 0 0
1
- [26] .debug_pubnames PROGBITS 00000000 0178da 0018dc 00 0 0
1
- [27] .debug_info PROGBITS 00000000 0191b6 00e557 00 0 0
1
- [28] .debug_abbrev PROGBITS 00000000 02770d 000951 00 0 0
1
- [29] .debug_line PROGBITS 00000000 02805e 00bb0b 00 0 0
1
- [30] .debug_frame PROGBITS 00000000 033b6c 001498 00 0 0
4
- [31] .debug_str PROGBITS 00000000 035004 0023d9 01 MS 0 0
1
- [32] .debug_loc PROGBITS 00000000 0373dd 00ce49 00 0 0
1
- [33] .debug_macinfo PROGBITS 00000000 044226 000003 00 0 0
1
- [34] .debug_pubtypes PROGBITS 00000000 044229 0009b5 00 0 0
1
- [35] .debug_ranges PROGBITS 00000000 044bde 001688 00 0 0
1
- [36] .shstrtab STRTAB 00000000 046266 00015e 00 0 0
1
- [37] .symtab SYMTAB 00000000 0469dc 000eb0 10 38 40
4
- [38] .strtab STRTAB 00000000 04788c 000c9d 00 0 0
1
+ [26] .shstrtab STRTAB 00000000 0178da 0000c8 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)
Of particular interest is the TLS line, which changes from:
Program Headers:
Type Offset VirtAddr PhysAddr FileSiz MemSiz Flg Align
...
TLS 0x0171f8 0x000181f8 0x000181f8 0x00000 0x00658 R 0x8
to:
Type Offset VirtAddr PhysAddr FileSiz MemSiz Flg Align
...
TLS 0x0171f8 0x000187f4 0x000187f4 0x00000 0x00050 R 0x8
The size changes from 0x658 to 0x50 and given that the xo_default_handle is 328
bytes (0x148), this is likely broken.
Not that this explains the starting address being below segment #3's starting
address......
Thanks,
Phil
--
You are receiving this mail because:
You are the assignee for the bug.
More information about the freebsd-bugs
mailing list