Hi Ying, On Wed, Jul 10, 2024 at 2:06 PM Aaron Merey <ame...@redhat.com> wrote: > > On Wed, Jul 10, 2024 at 4:33 AM Ying Huang <ying.hu...@oss.cipunited.com> > wrote: > > > > + testrun diff /tmp/tmp.bCCbATKu43/stack.out - > > + built_testrun diff /tmp/tmp.bCCbATKu43/stack.out - > > + > > LD_LIBRARY_PATH=/home/huangying/elf/elfutils_main/libdw:/home/huangying/elf/elfutils_main/backends:/home/huangying/elf/elfutils_main/libelf:/home/huangying/elf/elfutils_main/libasm:/home/huangying/elf/elfutils_main/debuginfod > > + diff /tmp/tmp.bCCbATKu43/stack.out - > > 4,5c4,5 > > < #1 0x0000aaaae5663f20 > > < #2 0x0000aaaae5667a98 > > --- > > > #1 0x0000aaaae5663f20 kill_shell > > > #2 0x0000aaaae5667a98 termsig_handler.part.0 > > + rm -rf -- /tmp/tmp.bCCbATKu43 > > FAIL run-sysroot.sh (exit status: 1) > > > > > > There are two lines where the function name cannot be parsed. > > I took a look at this but I'm still not sure what's going on. I ran > the run-sysroot.sh testcase by hand on the extracted contents of > testfile-sysroot.tar.bz2. eu-stack's /proc/PID/fd contained the > correct binaries located under the sysroot. The testcase passes > on my Fedora 40 x86_64 machine as well as on all elfutils buildbots. > > It's also strange that those two particular stack frames from > /bin/bash are missing the function name yet the other /bin/bash > frames include proper function names. > > I'll look into this some more.
This issue turned out to be related to .gnu_debugdata. The 2 missing symbols you reported are contained in this section. It's LZMA-compressed so if elfutils isn't built with LZMA support then the section isn't read. I did some testing on Debian 6.1.94-1 (2024-06-21) x86_64. LZMA/xz wasn't pre-installed and I was able to reproduce the test failure. I pushed a commit (39e962f063b5e) that modifies run-sysroot.sh to remove these two frames from the backtrace being tested, so that the result doesn't depend on LZMA support. Aaron