----- Original Message -----
Hi Sasha,
On 11/19/18 8:54 PM, Sasha Levin wrote:
On Mon, Nov 19, 2018 at 01:15:04PM -0500, CKI wrote:
powerpc: FAILED Test name: /kernel/distribution/ltp/lite
Thanks for the report! Unless I'm missing something, where do I see which hardware failures it's hitting?
We're still adjusting our system to working with upstream and have to go through implementing sanitizing and picking the logs which we could send. Meanwhile we'll have to do it by hand.
The failed test was shmat02:
shmat02 FAIL 7
Hi,
This appears unrelated to whatever LTP test is doing, as it crashed (SIGBUS) early in linker on access to .dynamic section:
# gdb mnt/testarea/ltp/testcases/bin/shmat02 mnt/testarea/ltp/cores/core.20255 GNU gdb (GDB) Fedora 8.1.1-3.fc28 Copyright (C) 2018 Free Software Foundation, Inc. License GPLv3+: GNU GPL version 3 or later http://gnu.org/licenses/gpl.html This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law. Type "show copying" and "show warranty" for details. This GDB was configured as "ppc64-redhat-linux-gnu". Type "show configuration" for configuration details. For bug reporting instructions, please see: http://www.gnu.org/software/gdb/bugs/. Find the GDB manual and other documentation resources online at: http://www.gnu.org/software/gdb/documentation/. For help, type "help". Type "apropos word" to search for commands related to "word"... Reading symbols from mnt/testarea/ltp/testcases/bin/shmat02...done. [New LWP 20255] Core was generated by `shmat02 '. Program terminated with signal SIGBUS, Bus error. #0 0x00007fff88e569ec in ?? ()
(gdb) add-symbol-file /lib64/ld64.so.1 0x00007fff88e53c00 add symbol table from file "/lib64/ld64.so.1" at .text_addr = 0x7fff88e53c00 (y or n) y Reading symbols from /lib64/ld64.so.1...Reading symbols from /usr/lib/debug/usr/lib64/ld-2.27.so.debug...done. done.
(gdb) bt #0 elf_get_dynamic_info (temp=0x0, l=0x7fff88e91100) at get-dynamic-info.h:46 #1 dl_main (phdr=<optimized out>, phnum=<optimized out>, user_entry=<optimized out>, auxv=<optimized out>) at rtld.c:1285 #2 0x00007fff88e6f940 in _dl_sysdep_start (start_argptr=<optimized out>, dl_main=0x7fff88e8f0e8) at ../elf/dl-sysdep.c:253 #3 0x00007fff88e54570 in _dl_start_final (arg=arg@entry=0x7fffcc89c240, info=info@entry=0x7fffcc89bc90) at rtld.c:412 #4 0x00007fff88e5560c in _dl_start (arg=0x7fffcc89c240) at rtld.c:521 #5 0x00007fff88e53d30 in ._start ()
(gdb) f 0 #0 elf_get_dynamic_info (temp=0x0, l=0x7fff88e91100) at get-dynamic-info.h:46 46 info = l->l_info;
(gdb) list 41 #if !defined RTLD_BOOTSTRAP && !defined STATIC_PIE_BOOTSTRAP 42 if (dyn == NULL) 43 return; 44 #endif 45 46 info = l->l_info; 47 48 while (dyn->d_tag != DT_NULL) 49 { 50 if ((d_tag_utype) dyn->d_tag < DT_NUM)
(gdb) p dyn $1 = (Elf64_Dyn *) 0x1002f118
(gdb) p/x $pc $2 = 0x7fff88e569ec
(gdb) disassemble 0x7fff88e569e0,0x00007fff88e569f8 Dump of assembler code from 0x7fff88e569e0 to 0x7fff88e569f8: 0x00007fff88e569e0 <dl_main+3072>: ld r8,16(r24) 0x00007fff88e569e4 <dl_main+3076>: cmpdi cr7,r8,0 0x00007fff88e569e8 <dl_main+3080>: beq cr7,0x7fff88e56c10 <dl_main+3632> => 0x00007fff88e569ec <dl_main+3084>: ld r10,0(r8) 0x00007fff88e569f0 <dl_main+3088>: addi r7,r24,64 0x00007fff88e569f4 <dl_main+3092>: cmpdi cr7,r10,0 End of assembler dump.
(gdb) p/x $r8 $3 = 0x1002f118
(gdb) p dyn $4 = (Elf64_Dyn *) 0x1002f118
(gdb) main info sect ... [18] 0x1002f118->0x1002f2f8 at 0x0001f118: .dynamic ALLOC LOAD DATA HAS_CONTENTS
(gdb) info symbol 0x1002f118 _DYNAMIC in section .dynamic of /root/mnt/testarea/ltp/testcases/bin/shmat02
(gdb) x/60x 0x1002f118 0x1002f118: 0x00000000 0x00000000 0x00000000 0x00000000 0x1002f128: 0x00000000 0x00000000 0x00000000 0x00000000 0x1002f138: 0x00000000 0x00000000 0x00000000 0x00000000 0x1002f148: 0x00000000 0x00000000 0x00000000 0x00000000 0x1002f158: 0x00000000 0x00000000 0x00000000 0x00000000 0x1002f168: 0x00000000 0x00000000 0x00000000 0x00000000 0x1002f178: 0x00000000 0x00000000 0x00000000 0x00000000 0x1002f188: 0x00000000 0x00000000 0x00000000 0x00000000 0x1002f198: 0x00000000 0x00000000 0x00000000 0x00000000 0x1002f1a8: 0x00000000 0x00000000 0x00000000 0x00000000 0x1002f1b8: 0x00000000 0x00000000 0x00000000 0x00000000 0x1002f1c8: 0x00000000 0x00000000 0x00000000 0x00000000 0x1002f1d8: 0x00000000 0x00000000 0x00000000 0x00000000 0x1002f1e8: 0x00000000 0x00000000 0x00000000 0x00000000 0x1002f1f8: 0x00000000 0x00000000 0x00000000 0x00000000
---
# readelf -a mnt/testarea/ltp/testcases/bin/shmat02 ... [19] .dynamic DYNAMIC 000000001002f118 0001f118 00000000000001e0 0000000000000010 WA 6 0 8
# objdump -dS /lib64/ld64.so.1 | grep -A10 -B10 " 69f0:" 69d8: 2f bb 00 00 cmpdi cr7,r27,0 69dc: 40 9e 02 40 bne cr7,6c1c <.dl_main+0xe3c> ElfW(Dyn) *dyn = l->l_ld; 69e0: e9 18 00 10 ld r8,16(r24) if (dyn == NULL) 69e4: 2f a8 00 00 cmpdi cr7,r8,0 69e8: 41 9e 02 28 beq cr7,6c10 <.dl_main+0xe30> while (dyn->d_tag != DT_NULL) 69ec: e9 48 00 00 ld r10,0(r8) info = l->l_info; 69f0: 38 f8 00 40 addi r7,r24,64 while (dyn->d_tag != DT_NULL) 69f4: 2f aa 00 00 cmpdi cr7,r10,0 69f8: 41 9e 00 a4 beq cr7,6a9c <.dl_main+0xcbc> + DT_VERSIONTAGNUM + DT_EXTRANUM + DT_VALNUM] = dyn; 69fc: 3c 60 00 03 lis r3,3 + DT_VERSIONTAGNUM + DT_EXTRANUM] = dyn; 6a00: 3c 80 00 03 lis r4,3 info[dyn->d_tag - DT_LOPROC + DT_NUM] = dyn; 6a04: 3c c0 ff fc lis r6,-4 + DT_VERSIONTAGNUM + DT_EXTRANUM + DT_VALNUM] = dyn;
Regards, Jan