1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
|
#! /bin/sh
# Copyright (C) 2012, 2013 Red Hat, Inc.
# This file is part of elfutils.
#
# This file is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 3 of the License, or
# (at your option) any later version.
#
# elfutils is distributed in the hope that it will be useful, but
# WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
. $srcdir/test-subr.sh
testfiles testfile63
testrun_compare ${abs_top_builddir}/src/readelf -n testfile63 <<\EOF
Note segment of 892 bytes at offset 0x274:
Owner Data size Type
CORE 148 PRSTATUS
info.si_signo: 11, info.si_code: 0, info.si_errno: 0, cursig: 11
sigpend: <>
sighold: <>
pid: 11087, ppid: 11063, pgrp: 11087, sid: 11063
utime: 0.000000, stime: 0.010000, cutime: 0.000000, cstime: 0.000000
orig_r0: -1, fpvalid: 1
r0: 1 r1: -1091672508 r2: -1091672500
r3: 0 r4: 0 r5: 0
r6: 33728 r7: 0 r8: 0
r9: 0 r10: -1225703496 r11: -1091672844
r12: 0 sp: 0xbeee64f4 lr: 0xb6dc3f48
pc: 0x00008500 spsr: 0x60000010
CORE 124 PRPSINFO
state: 0, sname: R, zomb: 0, nice: 0, flag: 0x00400500
uid: 0, gid: 0, pid: 11087, ppid: 11063, pgrp: 11087, sid: 11063
fname: a.out, psargs: ./a.out
CORE 144 AUXV
HWCAP: 0xe8d7 <swp half thumb fast-mult vfp edsp>
PAGESZ: 4096
CLKTCK: 100
PHDR: 0x8034
PHENT: 32
PHNUM: 8
BASE: 0xb6eee000
FLAGS: 0
ENTRY: 0x83c0
UID: 0
EUID: 0
GID: 0
EGID: 0
SECURE: 0
RANDOM: 0xbeee674e
EXECFN: 0xbeee6ff4
PLATFORM: 0xbeee675e
NULL
CORE 116 FPREGSET
f0: 0x000000000000000000000000 f1: 0x000000000000000000000000
f2: 0x000000000000000000000000 f3: 0x000000000000000000000000
f4: 0x000000000000000000000000 f5: 0x000000000000000000000000
f6: 0x000000000000000000000000 f7: 0x000000000000000000000000
LINUX 260 ARM_VFP
fpscr: 0x00000000
d0: 0x0000000000000000 d1: 0x0000000000000000
d2: 0x0000000000000000 d3: 0x0000000000000000
d4: 0x0000000000000000 d5: 0x0000000000000000
d6: 0x0000000000000000 d7: 0x0000000000000000
d8: 0x0000000000000000 d9: 0x0000000000000000
d10: 0x0000000000000000 d11: 0x0000000000000000
d12: 0x0000000000000000 d13: 0x0000000000000000
d14: 0x0000000000000000 d15: 0x0000000000000000
d16: 0x0000000000000000 d17: 0x0000000000000000
d18: 0x0000000000000000 d19: 0x0000000000000000
d20: 0x0000000000000000 d21: 0x0000000000000000
d22: 0x0000000000000000 d23: 0x0000000000000000
d24: 0x0000000000000000 d25: 0x0000000000000000
d26: 0x0000000000000000 d27: 0x0000000000000000
d28: 0x0000000000000000 d29: 0x0000000000000000
d30: 0x0000000000000000 d31: 0x0000000000000000
EOF
testfiles testfile67
testrun_compare ${abs_top_builddir}/src/readelf -n testfile67 <<\EOF
Note segment of 1044 bytes at offset 0xe8:
Owner Data size Type
CORE 336 PRSTATUS
info.si_signo: 4, info.si_code: 0, info.si_errno: 0, cursig: 4
sigpend: <>
sighold: <>
pid: 805, ppid: 804, pgrp: 804, sid: 699
utime: 0.000042, stime: 0.000103, cutime: 0.000000, cstime: 0.000000
orig_r2: 2571552016, fpvalid: 1
pswm: 0x0705c00180000000 pswa: 0x00000000800000d6
r0: 4393751543808 r1: 4398002544388
r2: 11 r3: 2571578208
r4: 2571702016 r5: 4398003235624
r6: 2571580768 r7: 2571702016
r8: 2571578208 r9: 2571552016
r10: 2571552016 r11: 0
r12: 4398003499008 r13: 2148274656
r14: 0 r15: 4398040761216
a0: 0x000003ff a1: 0xfd54a6f0 a2: 0x00000000 a3: 0x00000000
a4: 0x00000000 a5: 0x00000000 a6: 0x00000000 a7: 0x00000000
a8: 0x00000000 a9: 0x00000000 a10: 0x00000000 a11: 0x00000000
a12: 0x00000000 a13: 0x00000000 a14: 0x00000000 a15: 0x00000000
CORE 136 PRPSINFO
state: 0, sname: R, zomb: 0, nice: 0, flag: 0x0000000000400400
uid: 0, gid: 0, pid: 805, ppid: 804, pgrp: 804, sid: 699
fname: 1, psargs: ./1
CORE 304 AUXV
SYSINFO_EHDR: 0
HWCAP: 0x37f
PAGESZ: 4096
CLKTCK: 100
PHDR: 0x80000040
PHENT: 56
PHNUM: 2
BASE: 0
FLAGS: 0
ENTRY: 0x800000d4
UID: 0
EUID: 0
GID: 0
EGID: 0
SECURE: 0
RANDOM: 0x3ffffa8463c
EXECFN: 0x3ffffa85ff4
PLATFORM: 0x3ffffa8464c
NULL
CORE 136 FPREGSET
fpc: 0x00000000
f0: 0x0000000000000040 f1: 0x4b00000000000000
f2: 0x0000000000000041 f3: 0x3ad50b5555555600
f4: 0x0000000000000000 f5: 0x0000000000000000
f6: 0x0000000000000000 f7: 0x0000000000000000
f8: 0x0000000000000000 f9: 0x0000000000000000
f10: 0x0000000000000000 f11: 0x0000000000000000
f12: 0x0000000000000000 f13: 0x0000000000000000
f14: 0x0000000000000000 f15: 0x0000000000000000
LINUX 8 S390_LAST_BREAK
last_break: 0x000003fffd75ccbe
LINUX 4 S390_SYSTEM_CALL
system_call: 0
EOF
testfiles testfile68
testrun_compare ${abs_top_builddir}/src/readelf -n testfile68 <<\EOF
Note segment of 852 bytes at offset 0x94:
Owner Data size Type
CORE 224 PRSTATUS
info.si_signo: 4, info.si_code: 0, info.si_errno: 0, cursig: 4
sigpend: <>
sighold: <>
pid: 839, ppid: 838, pgrp: 838, sid: 699
utime: 0.000043, stime: 0.000102, cutime: 0.000000, cstime: 0.000000
orig_r2: -1723388288, fpvalid: 1
pswm: 0x070dc000 pswa: 0x8040009a
r0: 0 r1: -43966716 r2: 11 r3: -1723238816
r4: -1723265280 r5: -43275480 r6: -1723245280 r7: -1723265280
r8: -1723238816 r9: -1723388288 r10: -1723388288 r11: 0
r12: -43012096 r13: -2146692640 r14: 0 r15: 2139883440
a0: 0x000003ff a1: 0xfd54a6f0 a2: 0x00000000 a3: 0x00000000
a4: 0x00000000 a5: 0x00000000 a6: 0x00000000 a7: 0x00000000
a8: 0x00000000 a9: 0x00000000 a10: 0x00000000 a11: 0x00000000
a12: 0x00000000 a13: 0x00000000 a14: 0x00000000 a15: 0x00000000
CORE 124 PRPSINFO
state: 0, sname: R, zomb: 0, nice: 0, flag: 0x00400400
uid: 0, gid: 0, pid: 839, ppid: 838, pgrp: 838, sid: 699
fname: 2, psargs: ./2
CORE 152 AUXV
SYSINFO_EHDR: 0
HWCAP: 0x37f
PAGESZ: 4096
CLKTCK: 100
PHDR: 0x400034
PHENT: 32
PHNUM: 2
BASE: 0
FLAGS: 0
ENTRY: 0x400098
UID: 0
EUID: 0
GID: 0
EGID: 0
SECURE: 0
RANDOM: 0x7f8c090c
EXECFN: 0x7f8c1ff4
PLATFORM: 0x7f8c091c
NULL
CORE 136 FPREGSET
fpc: 0x00000000
f0: 0x0000000000000040 f1: 0x4b00000000000000
f2: 0x0000000000000041 f3: 0x3ad50b5555555600
f4: 0x0000000000000000 f5: 0x0000000000000000
f6: 0x0000000000000000 f7: 0x0000000000000000
f8: 0x0000000000000000 f9: 0x0000000000000000
f10: 0x0000000000000000 f11: 0x0000000000000000
f12: 0x0000000000000000 f13: 0x0000000000000000
f14: 0x0000000000000000 f15: 0x0000000000000000
LINUX 8 S390_LAST_BREAK
last_break: 0xfd75ccbe
LINUX 4 S390_SYSTEM_CALL
system_call: 0
LINUX 64 S390_HIGH_GPRS
high_r0: 0x000003ff, high_r1: 0x000003ff, high_r2: 0x00000000
high_r3: 0x00000000, high_r4: 0x00000000, high_r5: 0x000003ff
high_r6: 0x00000000, high_r7: 0x00000000, high_r8: 0x00000000
high_r9: 0x00000000, high_r10: 0x00000000, high_r11: 0x00000000
high_r12: 0x000003ff, high_r13: 0x00000000, high_r14: 0x00000000
high_r15: 0x00000000
EOF
# To reproduce this core dump, do this on x86_64 machine with Linux
# 3.7 or later:
# $ gcc -x c <(echo 'int main () { return *(int *)0x12345678; }')
# $ ./a.out
testfiles testfile71
testrun_compare ${abs_top_builddir}/src/readelf -n testfile71 <<\EOF
Note segment of 1476 bytes at offset 0x430:
Owner Data size Type
CORE 336 PRSTATUS
info.si_signo: 11, info.si_code: 0, info.si_errno: 0, cursig: 11
sigpend: <>
sighold: <>
pid: 9664, ppid: 2868, pgrp: 9664, sid: 2868
utime: 0.000000, stime: 0.004000, cutime: 0.000000, cstime: 0.000000
orig_rax: -1, fpvalid: 0
r15: 0 r14: 0
r13: 140734971656848 r12: 4195328
rbp: 0x00007fff69fe39b0 rbx: 0
r11: 266286012928 r10: 140734971656256
r9: 0 r8: 266289790592
rax: 305419896 rcx: 4195584
rdx: 140734971656872 rsi: 140734971656856
rdi: 1 rip: 0x00000000004004f9
rflags: 0x0000000000010246 rsp: 0x00007fff69fe39b0
fs.base: 0x00007fa1c8933740 gs.base: 0x0000000000000000
cs: 0x0033 ss: 0x002b ds: 0x0000 es: 0x0000 fs: 0x0000 gs: 0x0000
CORE 136 PRPSINFO
state: 0, sname: R, zomb: 0, nice: 0, flag: 0x0000000000000200
uid: 1000, gid: 1000, pid: 9664, ppid: 2868, pgrp: 9664, sid: 2868
fname: a.out, psargs: ./a.out
CORE 128 SIGINFO
si_signo: 11, si_errno: 0, si_code: 1
fault address: 0x12345678
CORE 304 AUXV
SYSINFO_EHDR: 0x7fff69ffe000
HWCAP: 0xafebfbff <fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss tm pbe>
PAGESZ: 4096
CLKTCK: 100
PHDR: 0x400040
PHENT: 56
PHNUM: 9
BASE: 0
FLAGS: 0
ENTRY: 0x400400
UID: 1000
EUID: 1000
GID: 1000
EGID: 1000
SECURE: 0
RANDOM: 0x7fff69fe3d19
EXECFN: 0x7fff69fe4ff0
PLATFORM: 0x7fff69fe3d29
NULL
CORE 469 FILE
10 files:
00400000-00401000 00000000 4096 /home/petr/a.out
00600000-00601000 00000000 4096 /home/petr/a.out
00601000-00602000 00001000 4096 /home/petr/a.out
3dffa00000-3dffa21000 00000000 135168 /usr/lib64/ld-2.17.so
3dffc20000-3dffc21000 00020000 4096 /usr/lib64/ld-2.17.so
3dffc21000-3dffc22000 00021000 4096 /usr/lib64/ld-2.17.so
3dffe00000-3dfffb6000 00000000 1794048 /usr/lib64/libc-2.17.so
3dfffb6000-3e001b6000 001b6000 2097152 /usr/lib64/libc-2.17.so
3e001b6000-3e001ba000 001b6000 16384 /usr/lib64/libc-2.17.so
3e001ba000-3e001bc000 001ba000 8192 /usr/lib64/libc-2.17.so
EOF
exit 0
|