Description of problem: Frysk has historically not checked the CRC of debuginfo files. This can result in a silent mismatch between the executable and debuginfo files. Risk of applying change: None. The work of finding debuginfo and matching CRC is almost entirely on the elfutils side. Risk of not applying change: High for situations where an out of date debuginfo is installed. Steps to Reproduce: 1. Run the script test-sysroot.sh, which will create a debuginfo with a mismatched crc Actual results: test program exits without hitting the breakpoint Expected results: 1. Run the test script test-sysroot-crc.sh, which will create a debuginfo with a matched crc (fhpd) break main breakpoint 0 deferred (fhpd) run Attached to process 18606 starting/running with this command: /tmp/test-sysroot/usr/bin/tstsysroot Running process 18606 (fhpd) Breakpoint 0 main 0x400448 list [0.0] 1 int main () -> 2 { 3 int x = 1; 4 return x; 5 }
Created attachment 294272 [details] reproducer script and test script
Created attachment 294273 [details] Dwfl.java patch
(In reply to comment #0) > Risk of applying change: > None. The work of finding debuginfo and matching CRC is almost entirely on the > elfutils side. There is never zero risk. The patch may mis-apply, the patch may be wrong, the patch may cause unexpected behavior. Can it affect non CRC code, can it affect anything else? That is is in the elfutils code is irrelevant.
Please add a -ve test; where the debuginfo is wrong and confirm the behavior is as expected.