https://bugs.winehq.org/show_bug.cgi?id=48161
--- Comment #24 from Paul Gofman gofmanp@gmail.com --- I've tested this with 5.0rc2 Winehq Fedora 31 and Ubuntu EOAN builds.
The issue looks solved with Fedora 31, AION 32 bit now starts normally with it.
There is still some problem with Ubuntu binaries. I get the following error in the terminal:
*** stack smashing detected ***: <unknown> terminated
Copying just ntdll.dll.so (32 bit) from Fedora 31 binaries solves the issue with Ubuntu binaries. My initial guess it might have something to do with these stack protection checks (using NtProtectVirtualMemory function just as an example):
7bcd8b00 <NtProtectVirtualMemory@@Base>: 7bcd8b00: 8b ff mov %edi,%edi 7bcd8b02: 55 push %ebp 7bcd8b03: 8b ec mov %esp,%ebp 7bcd8b05: 5d pop %ebp
...
7bcd8b37: 65 8b 0d 14 00 00 00 mov %gs:0x14,%ecx 7bcd8b3e: 89 4d e4 mov %ecx,-0x1c(%ebp) 7bcd8b41: 31 c9 xor %ecx,%ecx
...
7bcd8bd2: 74 24 je 7bcd8bf8 <NtProtectVirtualMemory@@Base+0xf8> 7bcd8bd4: 8b 45 e4 mov -0x1c(%ebp),%eax 7bcd8bd7: 65 33 05 14 00 00 00 xor %gs:0x14,%eax 7bcd8bde: 0f 85 a0 02 00 00 jne 7bcd8e84 <NtProtectVirtualMemory@@Base+0x384> ...
7bcd8e84: e8 fc ff ff ff call 7bcd8e85 <NtProtectVirtualMemory@@Base+0x385> 7bcd8e89: 8d b4 26 00 00 00 00 lea 0x0(%esi,%eiz,1),%esi
...
These checks are absent in Fedora build which works fine.
I am not familiar with Ubuntu build specifics, and could not find the build logs by the link above (presumably I have missed something, but I could not see any logs among the downloadable files I found by the link). If I knew the complete list of build flags used I could guess which flag is responsible.
Strictly speaking, it is not the "fcf-protection" issue anymore and might be a separate bug as such, but it is still probably about incompatible build options.