Open derekbruening opened 9 years ago
On Ubuntu 18 AND glinux (w/o -late)::
hgreving@hendrik-desktop:~/dynamorio/build$ /usr/local/google/home/hgreving/dynamorio/build/bin64/drrun -debug -native_exec_list common.nativeexec -native_exec_retakeover -code_api -- /usr/local/google/home/hgreving/dynamorio/build/suite/tests/bin/common.nativeexec <Starting application /usr/local/google/home/hgreving/dynamorio/build/suite/tests/bin/common.nativeexec (100279)> <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 '' -native_exec_list 'common.nativeexec' -no_native_exec_managed_code -native_exec_retakeover -no_indcall2direct > <Paste into GDB to debug DynamoRIO clients: set confirm off add-symbol-file '/usr/local/google/home/hgreving/dynamorio/build/lib64/debug/libdynamorio.so' 0x00007f31c0226688
<rank order violation shared_vm_areas(readwrite)@/usr/local/google/home/hgreving/dynamorio/src/core/vmareas.c:1568 acquired after module_data_lock(readwrite)@/usr/local/google/home/hgreving/dynamorio/src/core/module_list.c:60 in tid:187b7> <Application /usr/local/google/home/hgreving/dynamorio/build/suite/tests/bin/common.nativeexec (100279). Internal Error: DynamoRIO debug check failure: /usr/local/google/home/hgreving/dynamorio/src/core/utils.c:623 (dcontext->thread_owned_locks->last_lock->rank < lock->rank IF_CLIENT_INTERFACE( || first_client || both_client)) && "rank order violation" (Error occurred @0 frags) version 7.0.17821, 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 '' -native_exec_list 'common.nativeexec' -no_native_exec_managed_code -native_exec_retakeover -no_indcall2direct
Only on Ubuntu 18 (w/o -late):
hgreving@xps-laptop:~/dynamorio/build$ /home/hgreving/dynamorio/build/bin64/drrun -debug -native_exec_list common.nativeexec.appdll -native_exec_retakeover -code_api -- /home/hgreving/dynamorio/build/suite/tests/bin/common.nativeexec <Starting application /home/hgreving/dynamorio/build/suite/tests/bin/common.nativeexec (13785)> <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 '' -native_exec_list 'common.nativeexec.appdll' -no_native_exec_managed_code -native_exec_retakeover -no_indcall2direct > <Paste into GDB to debug DynamoRIO clients: set confirm off add-symbol-file '/home/hgreving/dynamorio/build/lib64/debug/libdynamorio.so' 0x00007f638970f688
<(1+x) Handling our fault in a TRY at 0x00007f6389956e13> /home/hgreving/dynamorio/build/suite/tests/bin/common.nativeexec: error while loading shared libraries: libdynamorio.so: cannot open shared object file: No such file or directory <Stopping application /home/hgreving/dynamorio/build/suite/tests/bin/common.nativeexec (13785)>
I have not diagnosed the exact cause, but it doesn't seem to be -emulate_brk (which assumes we're in control the whole execution). Given that -native_exec is not high priority, for now I'm just going to change the tests to use late injection.