plasma-umass / coz

Coz: Causal Profiling
Other
4.04k stars 160 forks source link

coz-profiler: Crashes when parsing DWARF debug symbols [from Debian bug-tracker] #141

Closed emeryberger closed 4 years ago

emeryberger commented 4 years ago

https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=942380

reported by Witold Baryluk, witold.baryluk@gmail.com


Version: 0.1.0-2
Severity: normal

user@debian:/tmp$ coz run --- /bin/find  /tmp/ -xdev
[libcoz.cpp:100] bootstrapping coz
[libcoz.cpp:128] Including MAIN, which is /usr/bin/find
[inspect.cpp:325] /usr/lib/x86_64-linux-gnu/libpthread-2.29.so is not in scope
[inspect.cpp:325] /usr/lib/x86_64-linux-gnu/libgcc_s.so.1 is not in scope
terminate called after throwing an instance of 'std::underflow_error'
  what():  cannot read past end of DWARF section
user@debian:/tmp$ coz run --- /bin/ls /
[libcoz.cpp:100] bootstrapping coz
[libcoz.cpp:128] Including MAIN, which is /usr/bin/ls
[inspect.cpp:325] /usr/lib/x86_64-linux-gnu/ld-2.29.so is not in scope
[inspect.cpp:325] /usr/lib/x86_64-linux-gnu/libm-2.29.so is not in scope
[inspect.cpp:325] /usr/lib/x86_64-linux-gnu/libdwarf++.so.0 is not in scope
terminate called after throwing an instance of 'std::underflow_error'
  what():  cannot read past end of DWARF section
user@debian:/tmp

The debug symbols I am using in this quick test are from coreutils-dbgsym
and findutils-dbgsym packages, and they are at correct versions. It looks
like coz has issues parsing debug symbols correctly.

BTW:

ii  dwarfdump                                                   20190529-1                            amd64        utility to dump DWARF debug information from ELF objects
ii  libdwarf++0:amd64                                           0.3-1                                 amd64        C++11 DWARF parser
ii  libdwarf1:amd64                                             20190529-1                            amd64        library to consume and produce DWARF debug information (runtime)

if this matters.

If it can't be reproduced I am happy to provide all binary files
necassary.

Regards,
Witold

-- System Information:
Debian Release: bullseye/sid
  APT prefers testing-debug
  APT policy: (500, 'testing-debug'), (500, 'unstable'), (1, 'experimental')
Architecture: amd64 (x86_64)
Foreign Architectures: i386

Kernel: Linux 5.2.0-3-amd64 (SMP w/32 CPU cores)
Kernel taint flags: TAINT_PROPRIETARY_MODULE, TAINT_OOT_MODULE, TAINT_UNSIGNED_MODULE
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8), LANGUAGE=en_US.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /usr/bin/dash
Init: systemd (via /run/systemd/system)
LSM: AppArmor: enabled

Versions of packages coz-profiler depends on:
ii  fonts-font-awesome  5.0.10+really4.7.0~dfsg-1
ii  libc6               2.29-2
ii  libdwarf++0         0.3-1
ii  libelf++0           0.3-1
ii  libgcc1             1:9.2.1-9
ii  libjs-d3            3.5.17-2
ii  libjs-d3-tip        0.7.1-1
ii  libjs-jquery        3.3.1~dfsg-3
ii  libstdc++6          9.2.1-9
ii  python              2.7.17-1

coz-profiler recommends no packages.

coz-profiler suggests no packages.

-- no debconf information```
ccurtsinger commented 4 years ago

Duplicate of #116