Running bedrock_server (Minecraft Private Server App) on Ubuntu Arm with Box64 - got some bugs inside server
Hi! I'm running a MInecraft Server these days with box64, and it works pretty good, but one thing that is most noticed, is that our Skins in-game are invisible or truncated into a box (I know, boxes...). I'm wondering if these warnings I receive are related... Does anyone know or tested running Bedrock server to see what happens? (I'll paste the whole code until I disconnect).
Dynarec for ARM64, with extension: ASIMD AES CRC32 PMULL ATOMICS PageSize:4096 Box64 with Dynarec v0.1.7 4a29c32 built on Mar 16 2022 20:23:11 Using default BOX64_LD_LIBRARY_PATH: ./:lib/:lib64/:x86_64/:bin64/:libs64/ Using default BOX64_PATH: ./:bin/ Counted 27 Env var Looking for /home/ubuntu/bedrock-server-1.18.12.01/bedrock_server Using native(wrapped) libpthread.so.0 Using native(wrapped) libz.so.1 Using native(wrapped) libnsl.so.1 Using native(wrapped) libssl.so.1 Using native(wrapped) libcrypto.so.1 Using native(wrapped) libdl.so.2 Using native(wrapped) librt.so.1 Using native(wrapped) libm.so.6 Using emulated /lib/x86_64-linux-gnu/libstdc++.so.6 Using emulated /lib/x86_64-linux-gnu/libgcc_s.so.1 Using native(wrapped) libc.so.6 Using native(wrapped) ld-linux-x86-64.so.2 NO LOG FILE! - setting up server logging...(NORMAL LOG) [2022-03-24 03:39:17:744 INFO] Starting Server (NORMAL LOG) [2022-03-24 03:39:17:745 INFO] Version 1.18.12.01 (NORMAL LOG) [2022-03-24 03:39:17:745 INFO] Session ID f66e1572-73d8-4e6a-b208-56d99e84cfba (NORMAL LOG) [2022-03-24 03:39:17:751 INFO] Level Name: JA (NORMAL LOG) [2022-03-24 03:39:17:759 INFO] Game mode: 0 Surviva (NORMAL LOG) [2022-03-24 03:39:17:759 INFO] Difficulty: 3 HARD (NORMAL LOG) [2022-03-24 03:39:17:921 INFO] opening worlds/JA/db (NORMAL LOG) Warning, call to __cxa_thread_atexit_impl(0x2dbde30, 0x709c3f80, 0x58baf98) ignored [2022-03-24 03:39:21:809 INFO] IPv4 supported, port: (NORMAL LOG) [2022-03-24 03:39:21:809 INFO] IPv6 supported, port: (NORMAL LOG) [2022-03-24 03:39:22:436 INFO] Server started. (NORMAL LOG) [2022-03-24 03:39:22:488 INFO] IPv4 supported, port:(NORMAL LOG) [2022-03-24 03:39:22:488 INFO] IPv6 supported, port: (NORMAL LOG) [2022-03-24 03:39:36:495 INFO] Player connected: , xuid: (NORMAL LOG) Warning, call to __cxa_thread_atexit_impl(0x2dbde30, 0xffff583e6450, 0x58baf98) ignored Warning, call to __cxa_thread_atexit_impl(0x3893880, 0xffff64000df8, 0x58baf98) ignored Warning, call to __cxa_thread_atexit_impl(0x38938c0, 0xffff64000e20, 0x58baf98) ignored Warning, call to __cxa_thread_atexit_impl(0x3893880, 0xffff70000df8, 0x58baf98) ignored Warning, call to __cxa_thread_atexit_impl(0x38938c0, 0xffff70000e20, 0x58baf98) ignored Warning, call to __cxa_thread_atexit_impl(0x3893880, 0xffff78000df8, 0x58baf98) ignored Warning, call to __cxa_thread_atexit_impl(0x38938c0, 0xffff78000e20, 0x58baf98) ignored Warning, call to __cxa_thread_atexit_impl(0x2d5a860, 0xffff78000d10, 0x58baf98) ignored Warning, call to __cxa_thread_atexit_impl(0x2d5b2b0, 0xffff78000d38, 0x58baf98) ignored Warning, call to __cxa_thread_atexit_impl(0x2d5c550, 0xffff78000d60, 0x58baf98) ignored Warning, call to __cxa_thread_atexit_impl(0x2e0a430, 0xffff78000dc0, 0x58baf98) ignored Warning, call to __cxa_thread_atexit_impl(0x2d5a860, 0xffff64000d10, 0x58baf98) ignored Warning, call to __cxa_thread_atexit_impl(0x2d5b2b0, 0xffff64000d38, 0x58baf98) ignored Warning, call to __cxa_thread_atexit_impl(0x2d5c550, 0xffff64000d60, 0x58baf98) ignored Warning, call to __cxa_thread_atexit_impl(0x2e0a430, 0xffff64000dc0, 0x58baf98) ignored Warning, call to __cxa_thread_atexit_impl(0x2d5a860, 0xffff583e63d0, 0x58baf98) ignored Warning, call to __cxa_thread_atexit_impl(0x2d5b2b0, 0xffff583e63f8, 0x58baf98) ignored Warning, call to __cxa_thread_atexit_impl(0x2d5c550, 0xffff583e6420, 0x58baf98) ignored Warning, call to __cxa_thread_atexit_impl(0x2d5a860, 0xffff70000d10, 0x58baf98) ignored Warning, call to __cxa_thread_atexit_impl(0x2d5b2b0, 0xffff70000d38, 0x58baf98) ignored Warning, call to __cxa_thread_atexit_impl(0x2d5c550, 0xffff70000d60, 0x58baf98) ignored Warning, call to __cxa_thread_atexit_impl(0x2e0a430, 0xffff70000dc0, 0x58baf98) ignored Warning, call to __cxa_thread_atexit_impl(0x3893880, 0xffff583e64b8, 0x58baf98) ignored Warning, call to __cxa_thread_atexit_impl(0x38938c0, 0xffff583e64e0, 0x58baf98) ignored [2022-03-24 03:40:08:846 INFO] Player disconnected: , xuid: (NORMAL LOG) Warning, call to __cxa_thread_atexit_impl(0x3893880, 0xffff6c000df8, 0x58baf98) ignored Warning, call to __cxa_thread_atexit_impl(0x38938c0, 0xffff6c000e20, 0x58baf98) ignored
Thanks!
I don't think those warning are related to the the bug you describe. It sounds more like a bug in an opcode of the dynarec.
To be honest, I don't have much knowledge of this, that's why I created this issue. And to bring it to light too. (just to point it, I tested the same server on a AMD64 machine to check, and it worked, that's why I accused the emulation) Anyway, is there anything I can do? To help you, or to try to solve it?
We are saying the same things. It's a bug in the emulation. Can you try to run the server without the dynarec? Use BOX64_DYNAREC=0 env. var. when you launch the server. Be warned, it will be much slower, so just check if it works without the issue like that to confirm it's an issue with the Dynarec.
Same skin bug, still... Put some image showing what happened. I tested it with FEX, to see if it keeps the bug, but it worked seemlessly, just in case it helps (as image) (and yes, I waited a looong time to enter the world without Dynarec lol)

So, same bug without Dynarec? Oh, that will be more complicated to debug. And it's working with FEX? Good to know. I the bedrock server free to use?
Yes, it is, but to set it up! As fas as I know you need the App to access it... Don't know if you could use a 'for tests only' app, if you know what I mean. But I could help too.
The server files: https://www.minecraft.net/en-us/download/server/bedrock
(out of curiosity, did you see some speed difference between FEX and Box86?)
The server starts muuuch faster with box64. FEX took some time to start. But playing, breaking blocks and flying is pretty much the same. It seems FEX used a little more CPU, and box64 has a little more delay when starting flying, for example. But not so much to tend to one or another.
The server starts muuuch faster with box64. FEX took some time to start. But playing, breaking blocks and flying is pretty much the same. It seems FEX used a little more CPU, and box64 has a little more delay when starting flying, for example. But not so much to tend to one or another.
Thanks for the feedback! :)
Also, sorry, but this ticket should be created in the box64 repo, not the box86 one.
If you run the server with BOX64_DYNAREC_LOG=1 you will see some message "Dynarec stopped because of OpCode" and than some hex numbers...
Do you see some that seems related to the skin bug?
Would you like me to replicate it there? I can answer you in box64 repo, if it's better. (and sorry about that)
About the Dynarec Log, I got that, but can't see if anything ir skin related... I got it just by logging in and out. Tried to change it in-game too, but didn't got the log.

Mmmm, yeah, those opcode are "lock:" stuffs. I'll check to add them later, but I don't expect them to change the behaviour.
I have that F0 0F B0 opcode, if you can rebuild box64 and retry (and I coulnd't reference the ticket because it"s on the wrong repo :P)
Just to point, I'm creating the issue in box64 repo, and will reference this ticket there. Also, will answer you there. :)
I just need to check, can I just re-run the ubuntu script, or should I re-build it 'manually'?
what ubuntu script?
Sorry about that... I've mistaken with FEX installation. Will post the result on the box64 issue!
Closing this ticket in favor of the one in box64 repo.