Honeygain segfaults
Hello, Honeygain is a closed-source app that only supports Linux in a Docker install. In order to grab the binaries, you'll need to pull the honeygain/honeygain image from Docker, save it and grab the binary "honeygain" and the library "libhg.so.1.0.0". The app segfaults when launched. My sistem is a Raspberry Pi 4 with standard RaspiOS arm64.
Box64 with trace with Dynarec v0.1.3 5cc3512 built on Aug 22 2021 23:11:51
Using default BOX64_LD_LIBRARY_PATH: ./:lib/:lib64/:x86_64/:bin64/:libs64/
Using default BOX64_PATH: ./:bin/
Counted 24 Env var
Looking for ./honeygain
Using emulated libhg.so.1.0.0
Using native(wrapped) libpthread.so.0
Using native(wrapped) libc.so.6
Using native(wrapped) ld-linux-x86-64.so.2
Using native(wrapped) librt.so.1
Using native(wrapped) libdl.so.2
Using emulated /lib/x86_64-linux-gnu/libgcc_s.so.1
0990|SIGSEGV @0x7f8c9cfb5c (???(0x7f8c9cfb5c)) (x64pc=0x460fb5/./honeygain:"???", rsp=0x7f8dd5d008, stack=0x7f8d55e000:0x7f8dd5e000 own=(nil) fp=0x7f8dd5d550), for accessing 0x4b6b7f8e9f824d (code=1/prot=0), db=0x8c6fce00(0x7f8c9cfa10:0x7f8c9cfd48/0x460f60:0x461046/???:clean, hash:847095ab/847095ab) handler=(nil)
Segmentation fault
hg.zip These are the bins if you wanna take a look
I'll take a look later.
still crashes
@ptitSeb Things got forward. Test with latest commit:
Dynarec for ARM64, with extension: ASIMD CRC32 PageSize:4096
Box64 with Dynarec v0.1.9 f2a0a1b built on Sep 20 2022 10:28:18
Using default BOX64_LD_LIBRARY_PATH: ./:lib/:lib64/:x86_64/:bin64/:libs64/
Using default BOX64_PATH: ./:bin/
Counted 24 Env var
Looking for ./honeygain
Rename process to "honeygain"
Using emulated libhg.so.1.0.0
Using native(wrapped) libpthread.so.0
Using native(wrapped) libc.so.6
Using native(wrapped) ld-linux-x86-64.so.2
Using native(wrapped) librt.so.1
Using native(wrapped) libdl.so.2
Using emulated /lib/x86_64-linux-gnu/libgcc_s.so.1
Error: Unsupported Syscall 0x10Bh (267)
Stop waiting for remaining thread 694844
Stop waiting for remaining thread 694845
Stop waiting for remaining thread 694846
Stop waiting for remaining thread 694847
Error: Unsupported Syscall 0x18h (24)
Stop waiting for remaining thread 694848
Stop waiting for remaining thread 694849
Error: Unsupported Syscall 0x18h (24)
Error: Unsupported Syscall 0x18h (24)
Error: Unsupported Syscall 0x18h (24)
Error: Unsupported Syscall 0x18h (24)
Segmentation fault
Dynarec for ARM64, with extension: ASIMD CRC32 PageSize:4096 Cores:4
Params database has 11 entries
Box64 with Dynarec v0.2.1 75083907 built on Dec 27 2022 18:12:43
Using default BOX64_LD_LIBRARY_PATH: ./:lib/:lib64/:x86_64/:bin64/:libs64/
Using default BOX64_PATH: ./:bin/
Counted 24 Env var
Looking for ./honeygain
Rename process to "honeygain"
Using emulated libhg.so.1.0.0
Using native(wrapped) libpthread.so.0
Using native(wrapped) libc.so.6
Using native(wrapped) ld-linux-x86-64.so.2
Using native(wrapped) librt.so.1
Using native(wrapped) libdl.so.2
Using emulated /lib/x86_64-linux-gnu/libgcc_s.so.1
170708|SIGBUS @0x34bc122c (???(./honeygain+0x34bc122c)) (x64pc=0x7fab4e9000//lib/x86_64-linux-gnu/libgcc_s.so.1:"???", rsp=0x7fab410570, stack=0x7faac11000:0x7fab411000 own=(nil) fp=0x7fab410578), for accessing 0x37 (code=1/prot=0), db=(nil)((nil):(nil)/(nil):(nil)/???:clean, hash:0/0) handler=(nil)
RSP-0x20:0x0000000000000000 RSP-0x18:0x0000000000000000 RSP-0x10:0x0000000000000000 RSP-0x08:0x0000000000000000
RSP+0x00:0x00000000000300c0 RSP+0x08:0x0000000000000000 RSP+0x10:0x0000000000000001 RSP+0x18:0x0000007fab410766 x86opcode=48 83 EC 08 48 8B 05 DD
Errore di bus
Things went forward: The program prints its banner but then misbehaves.
With dynarec it often crashes at startup, so I disabled it. When it doesn't crash, it will "Error processing authorisation" 9 times out of 10. It will rarely go forward but then crash later in the startup process.
I made a Dockerfile to make sure the environment is the same in my x86_64 laptop and raspberry, but this program is very simple and environment doesn't look like to be a problem.
Dockerfile.txt
Unimplemented Opcode (3A 30 2C 74) 61 67 3A 30 22 00 00 32 2A 6D 61 70 2E 68 64
Is this fixed now?
I don't think so, but there is a native arm64 image now.
I don't think so, but there is a native arm64 image now.
You don't think so? Well, I think it is. Do you plan to check if it's fixed or you just use the arm64 image?
The question is: is ticket to be closed or not.
Well, it's not "fixed" in the meaning the the amd64 binary works correctly in arm64, but it can be defined as "useless" as there is a native binary now.
Actually depends on the project maintainers if they want to consider these cases as improvement points or not, as improving compatibility with a binary with no real use should benefit other binaries too.
Guessing on the number of open issues (that are certainly more important compatibility problems than this one), I'd say that the developers have more important issues to work on, so yes, the ticket can be closed.
So, you tested the binary with latest box64 and it still broken or are you refering to the last tests you did 1 year ago?
1 year ago tests. As you can guess, after the native binary was released, i didn't test anymore. If you want/ask me I can definitely test again. :)
Ok, so closing ticket if no one care.