DynamoRIO / DynamoRIO/dynamorio
app_process32 crashes on Android O
- Dominant language
- C
- Stars
- 3.2k
- Forks
- 629
- Avg merge
- 2d 15h
- Merged PRs (30d)
- 31
Description
I'm trying to run app_process32 with drrun on my Pixel 2 (Android 8.1.0) but it crashes with SIGSEGV instantly every time (even without any argument)
`walleye:/data/ssh/root # /system/xbin/dynamorio/bin32/drrun -- app_process32`
```
```
I'm using the release version `DynamoRIO-ARM-Android-EABI-7.1.0-1.tar.gz`.
According to addr2line it crashes at `/dynamorio_package/core/arch/arm/encode.c:3084`
```cpp
if (di.isa_mode == DR_ISA_ARM_THUMB) {
if (di.instr_word >> 16 != 0) {
*((ushort *)copy_pc) = (ushort)(di.instr_word >> 16); // <- HERE
copy_pc += THUMB_SHORT_INSTR_SIZE;
}
*((ushort *)copy_pc) = (ushort)di.instr_word;
copy_pc += THUMB_SHORT_INSTR_SIZE;
} else {
*((uint *)copy_pc) = di.instr_word;
copy_pc += ARM_INSTR_SIZE;
}
```
btw I tried some simple commands like `ls` `date` `wget` `ping` etc. they all works perfectly fine
Contributor guide
Assessment
This issue has not been assessed yet.