On Sat, 2020-11-28 at 14:41 +0100, Mark Wielaard wrote: > That is interesting, it only fails on the two 32bit systems. > The failure is about the specific error message returned. > > FAIL: run-dwflsyms.sh > ===================== > --- dwflsyms.out 2020-11-28 01:17:44.130295202 +0000 > +++ - 2020-11-28 01:17:44.140327188 +0000 > @@ -10,7 +10,7 @@ > 9: NOTYPE GLOBAL __kernel_sigtramp_rt64 (12) 0xfffb1af0418 > 10: NOTYPE GLOBAL __kernel_clock_gettime (152) 0xfffb1af0494 > 11: NOTYPE GLOBAL __kernel_get_syscall_map (44) 0xfffb1af05f4 > -ld64.so.1: No symbol table found > +ld64.so.1: Callback returned failure > 0: NOTYPE LOCAL (0) 0 > 1: SECTION LOCAL (0) 0x461b0190 > 2: SECTION LOCAL (0) 0x461b01a4 > FAIL run-dwflsyms.sh (exit status: 1) > > So there is some subtle difference in the behavior of the > 'segment_report_module: Inline consider_notes() into only caller' > patch. > > I haven't spotted it yet, but I suspect some 'return' from the original > function got mistranslated as a continue, break or goto out in the > inlined variant. > > The specific testcase that fails is: > testrun_compare ${abs_builddir}/dwflsyms -e testfile66 --core=testfile66.core > > Which is a big endian ppc64 executable and core file.
The issue can be replicated on x86_64 with: $ CXX="g++ -m32" CC="gcc -m32" ~/src/elfutils/configure --enable-maintainer-mode $ make -j4 $ make check TESTS=run-dwflsyms.sh