DynamoRIO / dynamorio

Dynamic Instrumentation Tool Platform
Other
2.61k stars 554 forks source link

drrun is crashing on Ubuntu 16.04 #3355

Open orenyomtov opened 5 years ago

orenyomtov commented 5 years ago

It works well when I launch a brand new EC2 instance. I don't know why it fails to work on this specific machine, Reboot does not solve the problem.

What version of DynamoRIO are you using? Latest, master from git (version 7.0.17918)

Does the latest build from https://github.com/DynamoRIO/dynamorio/wiki/Latest-Build solve the problem? Same problem, same output

What operating system version are you running on? Ubuntu 16.04

$ uname -a
Linux ip-xxxx 4.4.0-1074-aws #84-Ubuntu SMP Thu Dec 6 08:57:58 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux

What application are you running? echo

$ ./bin64/drrun echo
<Starting application /bin/echo (1952)>
<Initial options = -no_dynamic_options -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 >
<Paste into GDB to debug DynamoRIO clients:
set confirm off
add-symbol-file '/fuzzing/dynamorio/build/lib64/debug/libdynamorio.so' 0x00007fc98fb336a0
>
<(1+x) Handling our fault in a TRY at 0x00007fc98fd7b712>
<Invalid opcode encountered>
<Application /bin/echo (1952).  Application exception at PC 0x00007fc98f8f22c7.  
Signal 4 delivered to application as default action.
Callstack:
    0x00007fc98f8f22c7   </lib/x86_64-linux-gnu/ld-2.23.so+0x172c7>
    0x00007fc98fdbe4a8   </fuzzing/dynamorio/build/lib64/debug/libdynamorio.so+0x2ba4a8>
    0x00007fc98fdbf851   </fuzzing/dynamorio/build/lib64/debug/libdynamorio.so+0x2bb851>
    0x00007fc98fdb56d1   </fuzzing/dynamorio/build/lib64/debug/libdynamorio.so+0x2b16d1>
    0x00007fc98fdbc393   </fuzzing/dynamorio/build/lib64/debug/libdynamorio.so+0x2b8393>
    0x00007fc98fdb8a14   </fuzzing/dynamorio/build/lib64/debug/libdynamorio.so+0x2b4a14>
    0x00007fc98fdbbee2   </fuzzing/dynamorio/build/lib64/debug/libdynamorio.so+0x2b7ee2>
    0x00007fc98fd7b34b   </fuzzing/dynamorio/build/lib64/debug/libdynamorio.so+0x27734b>
>
<Stopping application /bin/echo (1952)>
<Application /bin/echo (1952).  Internal Error: DynamoRIO debug check failure: /fuzzing/dynamorio/core/heap.c:1497 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 @1473 frags)
version 7.0.17918, custom build
-no_dynamic_options -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 
0x0000000053182820 0x00007fc98fbce28f
0x0000000053182a70 0x00007fc98fc5ed32
0x0000000053182aa0 0x00007fc98fb45b02
0x0000000053182ae0 0x00007fc98fb45e3e
0x0000000053182b10 0x00007fc98fb45fc4
0x0000000053182b30 0x00007fc98fdbf47c
0x0000000053182c90 0x00007fc98fdbf851
0x0000000053182cc0 0x00007fc98fdb56d1
0x0000000053182d30 0x00007fc98fdbc393
0x0000000053182ec0 0x00007fc98fdb8a14
0x00000000531831d0 0x00007fc98fdbbee2
0x0000000053183370 0x00007fc98fd7b34b>
derekbruening commented 5 years ago

I would suggest basic debugging: -loglevel 4 and look at what the invalid opcode is. Maybe AVX512 #1312?