CRASH drcachesim with -L0_filter on medium-sized apps
gzip and ls are both crashing:
bin64/drrun -t drcachesim -offline -L0_filter -- ls
<Starting application /bin/ls (32134)>
<Paste into GDB to debug DynamoRIO clients:
set confirm off
add-symbol-file '/home/bruening/dr/git/build_x64_dbg_tests/bin64/../clients/lib64/debug/libdrmemtrace.so' 0x000000007200eb50
add-symbol-file '/home/bruening/dr/git/build_x64_dbg_tests/lib64/debug/libdynamorio.so' 0x00005650a6baad78
add-symbol-file '/home/bruening/dr/git/build_x64_dbg_tests/ext/lib64/debug/libdrutil.so' 0x0000000075001680
add-symbol-file '/home/bruening/dr/git/build_x64_dbg_tests/ext/lib64/debug/libdrmgr.so' 0x0000000073002ca0
add-symbol-file '/home/bruening/dr/git/build_x64_dbg_tests/ext/lib64/debug/libdrcovlib.so' 0x0000000073801dd0
add-symbol-file '/home/bruening/dr/git/build_x64_dbg_tests/ext/lib64/debug/libdrx.so' 0x0000000077003200
add-symbol-file '/home/bruening/dr/git/build_x64_dbg_tests/ext/lib64/debug/libdrreg.so' 0x00000000780029c0
add-symbol-file '/usr/lib/x86_64-linux-gnu/libstdc++.so.6' 0x00007fd617c09620
add-symbol-file '/lib/x86_64-linux-gnu/libm.so.6' 0x00007fd6178ac610
add-symbol-file '/lib/x86_64-linux-gnu/libc.so.6' 0x00007fd6174fc520
add-symbol-file '/lib64/ld-linux-x86-64.so.2' 0x00007fd6172b7b00
add-symbol-file '/lib/x86_64-linux-gnu/libgcc_s.so.1' 0x00007fd6170a2ab0
>
<Initial options = -no_dynamic_options -client_lib '/home/bruening/dr/git/build_x64_dbg_tests/bin64/../clients/lib64/debug/libdrmemtrace.so;0;-offline -L0_filter' -code_api -stack_size 56K -signal_stack_size 32K -max_elide_jmp 0 -max_elide_call 0 -early_inject -emulate_brk -no_inline_ignored_syscalls -native_exec_default_list '' -no_native_exec_managed_code -no_indcall2direct >
<(1+x) Handling our fault in a TRY at 0x00005650a6e44987>
<Application /bin/ls (32134). Application exception at PC 0x0000000000405440.
Signal 11 delivered to application as default action.
Callstack:
0x0000000000405440 </bin/ls+0x5440>
0x3f0000000000405d
>
<Stopping application /bin/ls (32134)>
<Application /bin/ls (32134). Internal Error: DynamoRIO debug check failure: /home/bruening/dr/git/src/core/heap.c:1489 IF_WINDOWS(doing_detach || ) heapmgt->vmheap.num_free_blocks == heapmgt->vmheap.num_blocks - unfreed_blocks || ((ever_beyond_vmm IF_WINDOWS(|| get_os_version() >= WINDOWS_VERSION_8_1)) && heapmgt->vmheap.num_free_blocks >= heapmgt->vmheap.num_blocks - unfreed_blocks)
(Error occurred @3801 frags)
simple_app and the tests in the suite work.
In the past I've run very large apps with -L0_filter so I wonder if this is a regression. Unfortunately there are no automated tests of larger apps.