ptitSeb / box86

Box86 - Linux Userspace x86 Emulator with a twist, targeted at ARM Linux devices
https://box86.org
MIT License
3.28k stars 226 forks source link

Regression in RMS Express Installer #548

Closed WheezyE closed 2 years ago

WheezyE commented 2 years ago

Hey there,

I just noticed a regression in the RMS Express installer with box86. The program installer crashes and then Wine reports "Access violation at address 64B2B71B. Read of address 00000000". After bisecting commits with test.sh (and by building older commits), d364c2f5 seems to be the culprit.

Regression testing:

ad397bb1 built on Dec 17 works cc32d6cb built on Dec 27 works 67647bc5 built on Dec 31 works c3f21c8a built on Jan 2 works c3f21c8a built on Jan 3 works 7d0bc98e works d364c2f5 doesn't work 478c7818 built on Jan 4 doesn't work 2fc8d9a build on Jan 7 doesn't work

Turning off dynarec gets around the error

I'm using wine-5.21-devel on TwisterOS (RPi4).

BOX86_LOG=1 ``` pi@raspberrypi:~/WL $ BOX86_LOG=1 wine Winlink_Express_install.exe Debug level is 1 Dynarec for ARM, with extension: HALF FAST_MULT EDSP NEON VFPv4 IDIVA PageSize:4096 Box86 with Dynarec v0.2.5 d364c2f5 built on Jan 7 2022 21:29:12 BOX86: Wine detected, WINEPRELOADRESERVE="" Using default BOX86_LD_LIBRARY_PATH: ./:lib/:lib32/:x86/ Using default BOX86_PATH: ./:bin/ Counted 45 Env var Looking for /home/pi/wine/bin/wine argv[1]="Winlink_Express_install.exe" Using native(wrapped) libpthread.so.0 Using native(wrapped) libdl.so.2 Using native(wrapped) libc.so.6 Using native(wrapped) ld-linux.so.2 Using native(wrapped) librt.so.1 Using emulated /home/pi/wine/bin/../lib/wine/ntdll.so Using native(wrapped) libm.so.6 Debug level is 1 Dynarec for ARM, with extension: HALF FAST_MULT EDSP NEON VFPv4 IDIVA PageSize:4096 Box86 with Dynarec v0.2.5 d364c2f5 built on Jan 7 2022 21:29:12 BOX86: Wine detected, WINEPRELOADRESERVE="" Using default BOX86_LD_LIBRARY_PATH: ./:lib/:lib32/:x86/ Using default BOX86_PATH: ./:bin/ Counted 46 Env var Looking for /home/pi/wine/bin/wine argv[1]="Winlink_Express_install.exe" Using native(wrapped) libpthread.so.0 Using native(wrapped) libdl.so.2 Using native(wrapped) libc.so.6 Using native(wrapped) ld-linux.so.2 Using native(wrapped) librt.so.1 Using emulated /home/pi/wine/bin/../lib/wine/ntdll.so Using native(wrapped) libm.so.6 Debug level is 1 Dynarec for ARM, with extension: HALF FAST_MULT EDSP NEON VFPv4 IDIVA PageSize:4096 Box86 with Dynarec v0.2.5 d364c2f5 built on Jan 7 2022 21:29:12 Using default BOX86_LD_LIBRARY_PATH: ./:lib/:lib32/:x86/ Using default BOX86_PATH: ./:bin/ Counted 46 Env var Looking for /home/pi/wine/bin/wineserver Using native(wrapped) libdl.so.2 Using native(wrapped) libc.so.6 Using native(wrapped) ld-linux.so.2 Using native(wrapped) libpthread.so.0 Using native(wrapped) librt.so.1 Using emulated /home/pi/wine/lib/wine/../libwine.so.1 0050:err:ole:start_rpcss Failed to start RpcSs service Error loading needed lib /home/pi/wine/lib/wine/kernel32.so Warning: Cannot dlopen("/home/pi/wine/lib/wine/kernel32.so"/0x64218b98, 2) Error loading needed lib /home/pi/wine/lib/wine/kernelbase.so Warning: Cannot dlopen("/home/pi/wine/lib/wine/kernelbase.so"/0x6421ca28, 2) Error loading needed lib /home/pi/wine/lib/wine/comctl32.so Warning: Cannot dlopen("/home/pi/wine/lib/wine/comctl32.so"/0x642399e8, 2) Error loading needed lib /home/pi/wine/lib/wine/advapi32.so Warning: Cannot dlopen("/home/pi/wine/lib/wine/advapi32.so"/0x6423a5a0, 2) Error loading needed lib /home/pi/wine/lib/wine/sechost.so Warning: Cannot dlopen("/home/pi/wine/lib/wine/sechost.so"/0x6423aac0, 2) Using emulated /home/pi/wine/lib/wine/ucrtbase.dll.so Error loading needed lib /home/pi/wine/lib/wine/ucrtbase.so Warning: Cannot dlopen("/home/pi/wine/lib/wine/ucrtbase.so"/0x6423b4f0, 2) Using emulated /home/pi/wine/lib/wine/gdi32.so Error loading needed lib /home/pi/wine/lib/wine/imm32.so Warning: Cannot dlopen("/home/pi/wine/lib/wine/imm32.so"/0x64279738, 2) Using emulated /home/pi/wine/lib/wine/user32.so Error loading needed lib /home/pi/wine/lib/wine/setupapi.so Warning: Cannot dlopen("/home/pi/wine/lib/wine/setupapi.so"/0x64281c30, 2) Error loading needed lib /home/pi/wine/lib/wine/rpcrt4.so Warning: Cannot dlopen("/home/pi/wine/lib/wine/rpcrt4.so"/0x6427ef40, 2) Error loading needed lib /home/pi/wine/lib/wine/version.so Warning: Cannot dlopen("/home/pi/wine/lib/wine/version.so"/0x6427f0e8, 2) Error loading needed lib /home/pi/wine/lib/wine/usp10.so Warning: Cannot dlopen("/home/pi/wine/lib/wine/usp10.so"/0x6427f5f0, 2) Error loading needed lib /home/pi/wine/lib/wine/oleaut32.so Warning: Cannot dlopen("/home/pi/wine/lib/wine/oleaut32.so"/0x6427f768, 2) Error loading needed lib /home/pi/wine/lib/wine/ole32.so Warning: Cannot dlopen("/home/pi/wine/lib/wine/ole32.so"/0x64283cf0, 2) Error loading needed lib /home/pi/wine/lib/wine/combase.so Warning: Cannot dlopen("/home/pi/wine/lib/wine/combase.so"/0x642850d0, 2) Using emulated /home/pi/wine/lib/wine/netapi32.dll.so Error loading needed lib /home/pi/wine/lib/wine/netapi32.so Warning: Cannot dlopen("/home/pi/wine/lib/wine/netapi32.so"/0x642858c8, 2) Using emulated /home/pi/wine/lib/wine/iphlpapi.dll.so Using native(wrapped) libresolv.so.2 Error loading needed lib /home/pi/wine/lib/wine/iphlpapi.so Warning: Cannot dlopen("/home/pi/wine/lib/wine/iphlpapi.so"/0x64287948, 2) Using emulated /home/pi/wine/lib/wine/ws2_32.dll.so Error loading needed lib /home/pi/wine/lib/wine/ws2_32.so Warning: Cannot dlopen("/home/pi/wine/lib/wine/ws2_32.so"/0x64293f00, 2) Using emulated /home/pi/wine/lib/wine/dnsapi.dll.so Warning, function dn_expand not found in lib libresolv.so.2 Warning, function dn_expand not found in lib libresolv.so.2 Error: Global Symbol __dn_expand not found, cannot apply R_386_PC32 0x4219c215 (0xfffffffc) in /home/pi/wine/lib/wine/dnsapi.dll.so Warning, function res_query not found in lib libresolv.so.2 Warning, function res_query not found in lib libresolv.so.2 Error: Global Symbol __res_query not found, cannot apply R_386_PC32 0x4219cae0 (0xfffffffc) in /home/pi/wine/lib/wine/dnsapi.dll.so Error loading needed lib /home/pi/wine/lib/wine/dnsapi.so Warning: Cannot dlopen("/home/pi/wine/lib/wine/dnsapi.so"/0x6429c680, 2) Debug level is 1 Dynarec for ARM, with extension: HALF FAST_MULT EDSP NEON VFPv4 IDIVA PageSize:4096 Box86 with Dynarec v0.2.5 d364c2f5 built on Jan 7 2022 21:29:12 BOX86: Wine detected, WINEPRELOADRESERVE="000400000-00048c000" Using default BOX86_LD_LIBRARY_PATH: ./:lib/:lib32/:x86/ Using default BOX86_PATH: ./:bin/ Counted 48 Env var Looking for /home/pi/wine/bin/wine argv[1]="C:\windows\system32\conhost.exe" argv[2]="--unix" argv[3]="--width" argv[4]="80" argv[5]="--height" argv[6]="24" argv[7]="--server" argv[8]="0x10" Using native(wrapped) libpthread.so.0 Using native(wrapped) libdl.so.2 Using native(wrapped) libc.so.6 Using native(wrapped) ld-linux.so.2 Using native(wrapped) librt.so.1 Using emulated /home/pi/wine/bin/../lib/wine/ntdll.so Using native(wrapped) libm.so.6 Using emulated /home/pi/wine/lib/wine/../libwine.so.1 Error loading needed lib /home/pi/wine/lib/wine/kernel32.so Warning: Cannot dlopen("/home/pi/wine/lib/wine/kernel32.so"/0x638b4168, 2) Error loading needed lib /home/pi/wine/lib/wine/kernelbase.so Warning: Cannot dlopen("/home/pi/wine/lib/wine/kernelbase.so"/0x638b6430, 2) Error loading needed lib /home/pi/wine/lib/wine/conhost.so Warning: Cannot dlopen("/home/pi/wine/lib/wine/conhost.so"/0x638c0cd0, 2) Error loading needed lib /home/pi/wine/lib/wine/advapi32.so Warning: Cannot dlopen("/home/pi/wine/lib/wine/advapi32.so"/0x638c8358, 2) Error loading needed lib /home/pi/wine/lib/wine/sechost.so Warning: Cannot dlopen("/home/pi/wine/lib/wine/sechost.so"/0x638c86b8, 2) Using emulated /home/pi/wine/lib/wine/ucrtbase.dll.so Error loading needed lib /home/pi/wine/lib/wine/ucrtbase.so Warning: Cannot dlopen("/home/pi/wine/lib/wine/ucrtbase.so"/0x638c9050, 2) Using emulated /home/pi/wine/lib/wine/gdi32.so Using native(wrapped) libfreetype.so.6 Using emulated /home/pi/wine/lib/wine/user32.so Using native(wrapped) libfontconfig.so.1 Error loading needed lib /home/pi/wine/lib/wine/setupapi.so Warning: Cannot dlopen("/home/pi/wine/lib/wine/setupapi.so"/0x63906648, 2) Error loading needed lib /home/pi/wine/lib/wine/rpcrt4.so Warning: Cannot dlopen("/home/pi/wine/lib/wine/rpcrt4.so"/0x63906f78, 2) Error loading needed lib /home/pi/wine/lib/wine/version.so Warning: Cannot dlopen("/home/pi/wine/lib/wine/version.so"/0x63908b80, 2) Using native(wrapped) libfreetype.so.6 Using native(wrapped) libfontconfig.so.1 Using emulated /home/pi/wine/lib/wine/winex11.drv.so Using native(wrapped) libXext.so.6 Using native(wrapped) libX11.so.6 Using native(wrapped) libxcb.so.1 Using native(wrapped) libXau.so.6 Using native(wrapped) libXdmcp.so.6 Error loading needed lib /home/pi/wine/lib/wine/winex11.so Warning: Cannot dlopen("/home/pi/wine/lib/wine/winex11.so"/0x6432d280, 2) Using native(wrapped) libXinerama.so.1 Using native(wrapped) libXxf86vm.so.1 Using native(wrapped) libXrender.so.1 Using native(wrapped) libXrandr.so.2 Using native(wrapped) libXcomposite.so.1 Error loading needed lib /home/pi/wine/lib/wine/imm32.so Warning: Cannot dlopen("/home/pi/wine/lib/wine/imm32.so"/0x639898c8, 2) Using native(wrapped) libXi.so.6 Using native(wrapped) libXcursor.so.1 Error loading needed lib /home/pi/wine/lib/wine/uxtheme.so Warning: Cannot dlopen("/home/pi/wine/lib/wine/uxtheme.so"/0x643cb088, 2) 0024:fixme:process:SetProcessDEPPolicy (1): stub 0024:fixme:thread:GetThreadUILanguage : stub, returning default language. 0024:fixme:nls:RtlGetThreadPreferredUILanguages 00000038, 0031D974, 00000000 0031D99C 0024:fixme:nls:get_dummy_preferred_ui_language (0x38 0031D974 00000000 0031D99C) returning a dummy value (current locale) 0024:fixme:nls:RtlGetThreadPreferredUILanguages 00000038, 0031D974, 0110A680 0031D99C 0024:fixme:nls:get_dummy_preferred_ui_language (0x38 0031D974 0110A680 0031D99C) returning a dummy value (current locale) Using emulated /home/pi/wine/lib/wine/shell32.dll.so Error loading needed lib /home/pi/wine/lib/wine/shell32.so Warning: Cannot dlopen("/home/pi/wine/lib/wine/shell32.so"/0x643ef0d8, 2) Error loading needed lib /home/pi/wine/lib/wine/shlwapi.so Warning: Cannot dlopen("/home/pi/wine/lib/wine/shlwapi.so"/0x643fcc08, 2) Error loading needed lib /home/pi/wine/lib/wine/shcore.so Warning: Cannot dlopen("/home/pi/wine/lib/wine/shcore.so"/0x643fccd8, 2) 00e0:fixme:process:SetProcessDEPPolicy (1): stub 00e0:fixme:thread:GetThreadUILanguage : stub, returning default language. 00e0:fixme:nls:RtlGetThreadPreferredUILanguages 00000038, 0091D9C0, 00000000 0091D9E8 00e0:fixme:nls:get_dummy_preferred_ui_language (0x38 0091D9C0 00000000 0091D9E8) returning a dummy value (current locale) 00e0:fixme:nls:RtlGetThreadPreferredUILanguages 00000038, 0091D9C0, 0175A680 0091D9E8 00e0:fixme:nls:get_dummy_preferred_ui_language (0x38 0091D9C0 0175A680 0091D9E8) returning a dummy value (current locale) 00e0:fixme:wtsapi:WTSRegisterSessionNotification Stub 00010086 0x00000000 00e0:fixme:uxtheme:BufferedPaintInit Stub () 00e0:fixme:win:DisableProcessWindowsGhosting : stub 00e0:fixme:graphics:ShutdownBlockReasonDestroy (00010086): stub 00e0:fixme:graphics:ShutdownBlockReasonCreate (00010086, L"Installing"): stub 00e0:fixme:rstrtmgr:RmStartSession 006D678C, 0, 006D6790 stub! 00e0:fixme:graphics:ShutdownBlockReasonDestroy (00010086): stub 00e0:fixme:graphics:ShutdownBlockReasonCreate (00010086, L"Installing Winlink Express."): stub 00e0:fixme:msg:ChangeWindowMessageFilterEx 00010090 c05a 1 00000000 00e0:fixme:msg:ChangeWindowMessageFilterEx 00020090 c05a 1 00000000 00e0:fixme:msg:ChangeWindowMessageFilterEx 0001009A c05a 1 00000000 00e0:fixme:msg:ChangeWindowMessageFilterEx 0002009A c05a 1 00000000 00e8:fixme:ntdll:NtQuerySystemInformation info_class SYSTEM_PERFORMANCE_INFORMATION 00e8:fixme:seh:WerSetFlags (2) stub 00e8:fixme:heap:RtlSetHeapInformation 00000000 1 00000000 0 stub 00e0:fixme:rstrtmgr:RmEndSession 3735928559 stub! 00e0:fixme:graphics:ShutdownBlockReasonDestroy (00010086): stub 00e0:fixme:wtsapi:WTSUnRegisterSessionNotification Stub 00010086 00e0:fixme:uxtheme:BufferedPaintUnInit Stub () Library libXrender.so.1 (0x6436aef8) needs 0x64368608, but it was not found. Ignoring. Library libXext.so.6 (0x6432eaa0) needs 0x64377720, but it was not found. Ignoring. Library libXext.so.6 (0x6432eaa0) needs 0x64368608, but it was not found. Ignoring. Library libXext.so.6 (0x6432eaa0) needs 0x64365498, but it was not found. Ignoring. Library libXext.so.6 (0x6432eaa0) needs 0x6435f8b8, but it was not found. Ignoring. Library libXext.so.6 (0x6432eaa0) needs 0x6432d2b0, but it was not found. Ignoring. Library libX11.so.6 (0x6433d038) needs 0x64377720, but it was not found. Ignoring. Library libX11.so.6 (0x6433d038) needs 0x64368608, but it was not found. Ignoring. Library libX11.so.6 (0x6433d038) needs 0x64365498, but it was not found. Ignoring. Library libX11.so.6 (0x6433d038) needs 0x6435f8b8, but it was not found. Ignoring. Library libX11.so.6 (0x6433d038) needs 0x6432d2b0, but it was not found. Ignoring. Library libresolv.so.2 (0x642928c0) needs 0x6429c428, but it was not found. Ignoring. Library libresolv.so.2 (0x642928c0) needs 0x642877a8, but it was not found. Ignoring. Library libm.so.6 (0x641b2290) needs 0x643ef108, but it was not found. Ignoring. Library libm.so.6 (0x641b2290) needs 0x6432d2b0, but it was not found. Ignoring. Library libm.so.6 (0x641b2290) needs 0x6429c428, but it was not found. Ignoring. Library libm.so.6 (0x641b2290) needs 0x64293ca8, but it was not found. Ignoring. Library libm.so.6 (0x641b2290) needs 0x642877a8, but it was not found. Ignoring. Library libm.so.6 (0x641b2290) needs 0x642858f8, but it was not found. Ignoring. Library libm.so.6 (0x641b2290) needs 0x6427d9a8, but it was not found. Ignoring. Library libm.so.6 (0x641b2290) needs 0x64277b70, but it was not found. Ignoring. Library libm.so.6 (0x641b2290) needs 0x6423b978, but it was not found. Ignoring. Library libm.so.6 (0x641b2290) needs 0x641a4dd0, but it was not found. Ignoring. Library libc.so.6 (0x64198a10) needs 0x643ef108, but it was not found. Ignoring. Library libc.so.6 (0x64198a10) needs 0x6432d2b0, but it was not found. Ignoring. Library libc.so.6 (0x64198a10) needs 0x6429c428, but it was not found. Ignoring. Library libc.so.6 (0x64198a10) needs 0x64293ca8, but it was not found. Ignoring. Library libc.so.6 (0x64198a10) needs 0x642877a8, but it was not found. Ignoring. Library libc.so.6 (0x64198a10) needs 0x642858f8, but it was not found. Ignoring. Library libc.so.6 (0x64198a10) needs 0x6427d9a8, but it was not found. Ignoring. Library libc.so.6 (0x64198a10) needs 0x64277b70, but it was not found. Ignoring. Library libc.so.6 (0x64198a10) needs 0x6423b978, but it was not found. Ignoring. Library libc.so.6 (0x64198a10) needs 0x641d0c78, but it was not found. Ignoring. Library libc.so.6 (0x64198a10) needs 0x641a4dd0, but it was not found. Ignoring. Library libdl.so.2 (0x641988e8) needs 0x643ef108, but it was not found. Ignoring. Library libdl.so.2 (0x641988e8) needs 0x6432d2b0, but it was not found. Ignoring. Library libdl.so.2 (0x641988e8) needs 0x6429c428, but it was not found. Ignoring. Library libdl.so.2 (0x641988e8) needs 0x64293ca8, but it was not found. Ignoring. Library libdl.so.2 (0x641988e8) needs 0x642877a8, but it was not found. Ignoring. Library libdl.so.2 (0x641988e8) needs 0x642858f8, but it was not found. Ignoring. Library libdl.so.2 (0x641988e8) needs 0x6427d9a8, but it was not found. Ignoring. Library libdl.so.2 (0x641988e8) needs 0x64277b70, but it was not found. Ignoring. Library libdl.so.2 (0x641988e8) needs 0x6423b978, but it was not found. Ignoring. Library libdl.so.2 (0x641988e8) needs 0x641d0c78, but it was not found. Ignoring. Library libdl.so.2 (0x641988e8) needs 0x641a4dd0, but it was not found. Ignoring. Library libpthread.so.0 (0x64198770) needs 0x641a4dd0, but it was not found. Ignoring. pi@raspberrypi:~/WL $ Library libm.so.6 (0x63864368) needs 0x638fe638, but it was not found. Ignoring. Library libm.so.6 (0x63864368) needs 0x638fd120, but it was not found. Ignoring. Library libm.so.6 (0x63864368) needs 0x638c94d8, but it was not found. Ignoring. Library libm.so.6 (0x63864368) needs 0x63856e80, but it was not found. Ignoring. Library libc.so.6 (0x6384aae8) needs 0x638fe638, but it was not found. Ignoring. Library libc.so.6 (0x6384aae8) needs 0x638fd120, but it was not found. Ignoring. Library libc.so.6 (0x6384aae8) needs 0x638c94d8, but it was not found. Ignoring. Library libc.so.6 (0x6384aae8) needs 0x638867c8, but it was not found. Ignoring. Library libc.so.6 (0x6384aae8) needs 0x63856e80, but it was not found. Ignoring. Library libdl.so.2 (0x6384a9c0) needs 0x638fe638, but it was not found. Ignoring. Library libdl.so.2 (0x6384a9c0) needs 0x638fd120, but it was not found. Ignoring. Library libdl.so.2 (0x6384a9c0) needs 0x638c94d8, but it was not found. Ignoring. Library libdl.so.2 (0x6384a9c0) needs 0x638867c8, but it was not found. Ignoring. Library libdl.so.2 (0x6384a9c0) needs 0x63856e80, but it was not found. Ignoring. Library libpthread.so.0 (0x6384a848) needs 0x63856e80, but it was not found. Ignoring. ```

Hope you're healthy and staying safe

ptitSeb commented 2 years ago

Hi,

Thanks for the bisect. I'll take a look at that.

(yes, Im' healthy, thanks :) )

ptitSeb commented 2 years ago

Should be fixed now.

WheezyE commented 2 years ago

Thanks for the quick update!

I'm unfortunately getting this now with and without dynarec:

pi@raspberrypi:~/WL $ wineserver -k
Box86 with Dynarec v0.2.5 135e8d98 built on Jan  8 2022 11:16:49

pi@raspberrypi:~/WL $ wine Winlink_Express_install.exe 
Box86 with Dynarec v0.2.5 135e8d98 built on Jan  8 2022 11:16:49
Box86 with Dynarec v0.2.5 135e8d98 built on Jan  8 2022 11:16:49
Box86 with Dynarec v0.2.5 135e8d98 built on Jan  8 2022 11:16:49
0024:err:seh:NtRaiseException Unhandled exception code c0000005 flags 0 addr 0x6437202b
00f4:fixme:ntdll:NtQuerySystemInformation info_class SYSTEM_PERFORMANCE_INFORMATION
00f4:fixme:seh:WerSetFlags (2) stub
00f4:fixme:heap:RtlSetHeapInformation 00000000 1 00000000 0 stub

pi@raspberrypi:~/WL $ BOX86_DYNAREC=0 wine Winlink_Express_install.exe 
Box86 with Dynarec v0.2.5 135e8d98 built on Jan  8 2022 11:16:49
Box86 with Dynarec v0.2.5 135e8d98 built on Jan  8 2022 11:16:49
Box86 with Dynarec v0.2.5 135e8d98 built on Jan  8 2022 11:16:49
0024:err:seh:NtRaiseException Unhandled exception code c0000005 flags 0 addr 0x64a0902b
BOX86_LOG=1 ``` pi@raspberrypi:~/WL $ BOX86_LOG=1 wine Winlink_Express_install.exe Debug level is 1 Dynarec for ARMv8, with extension: HALF FAST_MULT EDSP NEON VFPv4 IDIVA PageSize:4096 Box86 with Dynarec v0.2.5 135e8d98 built on Jan 8 2022 11:16:49 BOX86: Wine detected, WINEPRELOADRESERVE="" Using default BOX86_LD_LIBRARY_PATH: ./:lib/:lib32/:x86/ Using default BOX86_PATH: ./:bin/ Counted 45 Env var Looking for /home/pi/wine/bin/wine argv[1]="Winlink_Express_install.exe" Using native(wrapped) libpthread.so.0 Using native(wrapped) libdl.so.2 Using native(wrapped) libc.so.6 Using native(wrapped) ld-linux.so.2 Using native(wrapped) librt.so.1 Using emulated /home/pi/wine/bin/../lib/wine/ntdll.so Using native(wrapped) libm.so.6 Debug level is 1 Dynarec for ARMv8, with extension: HALF FAST_MULT EDSP NEON VFPv4 IDIVA PageSize:4096 Box86 with Dynarec v0.2.5 135e8d98 built on Jan 8 2022 11:16:49 BOX86: Wine detected, WINEPRELOADRESERVE="" Using default BOX86_LD_LIBRARY_PATH: ./:lib/:lib32/:x86/ Using default BOX86_PATH: ./:bin/ Counted 46 Env var Looking for /home/pi/wine/bin/wine argv[1]="Winlink_Express_install.exe" Using native(wrapped) libpthread.so.0 Using native(wrapped) libdl.so.2 Using native(wrapped) libc.so.6 Using native(wrapped) ld-linux.so.2 Using native(wrapped) librt.so.1 Using emulated /home/pi/wine/bin/../lib/wine/ntdll.so Using native(wrapped) libm.so.6 Using emulated /home/pi/wine/lib/wine/../libwine.so.1 Error loading needed lib /home/pi/wine/lib/wine/kernel32.so Warning: Cannot dlopen("/home/pi/wine/lib/wine/kernel32.so"/0x636f2c40, 2) Error loading needed lib /home/pi/wine/lib/wine/kernelbase.so Warning: Cannot dlopen("/home/pi/wine/lib/wine/kernelbase.so"/0x636f6720, 2) Error loading needed lib /home/pi/wine/lib/wine/comctl32.so Warning: Cannot dlopen("/home/pi/wine/lib/wine/comctl32.so"/0x63720698, 2) Error loading needed lib /home/pi/wine/lib/wine/advapi32.so Warning: Cannot dlopen("/home/pi/wine/lib/wine/advapi32.so"/0x63721250, 2) Error loading needed lib /home/pi/wine/lib/wine/sechost.so Warning: Cannot dlopen("/home/pi/wine/lib/wine/sechost.so"/0x63721790, 2) Using emulated /home/pi/wine/lib/wine/ucrtbase.dll.so Error loading needed lib /home/pi/wine/lib/wine/ucrtbase.so Warning: Cannot dlopen("/home/pi/wine/lib/wine/ucrtbase.so"/0x637221c0, 2) Using emulated /home/pi/wine/lib/wine/gdi32.so Error loading needed lib /home/pi/wine/lib/wine/imm32.so Warning: Cannot dlopen("/home/pi/wine/lib/wine/imm32.so"/0x63757ea8, 2) Using emulated /home/pi/wine/lib/wine/user32.so Error loading needed lib /home/pi/wine/lib/wine/setupapi.so Warning: Cannot dlopen("/home/pi/wine/lib/wine/setupapi.so"/0x63760808, 2) Error loading needed lib /home/pi/wine/lib/wine/rpcrt4.so Warning: Cannot dlopen("/home/pi/wine/lib/wine/rpcrt4.so"/0x63760f58, 2) Error loading needed lib /home/pi/wine/lib/wine/version.so Warning: Cannot dlopen("/home/pi/wine/lib/wine/version.so"/0x63762348, 2) Error loading needed lib /home/pi/wine/lib/wine/usp10.so Warning: Cannot dlopen("/home/pi/wine/lib/wine/usp10.so"/0x63762850, 2) Error loading needed lib /home/pi/wine/lib/wine/oleaut32.so Warning: Cannot dlopen("/home/pi/wine/lib/wine/oleaut32.so"/0x63762b50, 2) Error loading needed lib /home/pi/wine/lib/wine/ole32.so Warning: Cannot dlopen("/home/pi/wine/lib/wine/ole32.so"/0x6375e188, 2) Error loading needed lib /home/pi/wine/lib/wine/combase.so Warning: Cannot dlopen("/home/pi/wine/lib/wine/combase.so"/0x6375e538, 2) Using emulated /home/pi/wine/lib/wine/netapi32.dll.so Error loading needed lib /home/pi/wine/lib/wine/netapi32.so Warning: Cannot dlopen("/home/pi/wine/lib/wine/netapi32.so"/0x63764778, 2) Using emulated /home/pi/wine/lib/wine/iphlpapi.dll.so Using native(wrapped) libresolv.so.2 Error loading needed lib /home/pi/wine/lib/wine/iphlpapi.so Warning: Cannot dlopen("/home/pi/wine/lib/wine/iphlpapi.so"/0x637666f8, 2) Using emulated /home/pi/wine/lib/wine/ws2_32.dll.so Error loading needed lib /home/pi/wine/lib/wine/ws2_32.so Warning: Cannot dlopen("/home/pi/wine/lib/wine/ws2_32.so"/0x63772e00, 2) Using emulated /home/pi/wine/lib/wine/dnsapi.dll.so Look for dn_expand in loaded elfs 1249|SIGSEGV @0x403171e0 (_dl_vsym (/lib/arm-linux-gnueabihf/libc.so.6)) (x86pc=0x6368402b/???:"???", esp=0x31df2c, stack=0x40b90000:0x41390000 own=(nil) fp=0x31df68), for accessing 0x1b5 (code=1/prot=0), db=(nil)((nil):(nil)/(nil):(nil)/???:clean, hash:0/0) 00f8:err:seh:NtRaiseException Unhandled exception code c0000005 flags 0 addr 0x6368402b pi@raspberrypi:~/WL $ 0100:fixme:ntdll:NtQuerySystemInformation info_class SYSTEM_PERFORMANCE_INFORMATION 0100:fixme:seh:WerSetFlags (2) stub 0100:fixme:heap:RtlSetHeapInformation 00000000 1 00000000 0 stub ```
WheezyE commented 2 years ago

Hmm, let me do a bit more testing. This was working after turning off dynarec before - maybe it's another regression or maybe my setup is being weird.

ptitSeb commented 2 years ago

Oh, don't bother. the error is in "dlvsym", that's some code I added lately, to workaround some changes in libc... But it's buggy. I have to fix some cases, but not sure what cases yet...

WheezyE commented 2 years ago

No worries and thank you again!

ptitSeb commented 2 years ago

Is it better now?

WheezyE commented 2 years ago

Sorry to report I'm still getting a crash when running the installer.

Terminal output / Log1 ``` pi@raspberrypi:~/WL $ wineserver -k Box86 with Dynarec v0.2.5 31a98887 built on Jan 10 2022 08:53:20 pi@raspberrypi:~/WL $ wine Winlink_Express_install.exe Box86 with Dynarec v0.2.5 31a98887 built on Jan 10 2022 08:53:20 Box86 with Dynarec v0.2.5 31a98887 built on Jan 10 2022 08:53:20 Box86 with Dynarec v0.2.5 31a98887 built on Jan 10 2022 08:53:20 0024:err:seh:NtRaiseException Unhandled exception code c0000005 flags 0 addr 0x634d002b pi@raspberrypi:~/WL $ BOX86_LOG=1 wine Winlink_Express_install.exe Debug level is 1 Dynarec for ARMv8, with extension: HALF FAST_MULT EDSP NEON VFPv4 IDIVA PageSize:4096 Box86 with Dynarec v0.2.5 31a98887 built on Jan 10 2022 08:53:20 BOX86: Wine detected, WINEPRELOADRESERVE="" Using default BOX86_LD_LIBRARY_PATH: ./:lib/:lib32/:x86/ Using default BOX86_PATH: ./:bin/ Counted 45 Env var Looking for /home/pi/wine/bin/wine argv[1]="Winlink_Express_install.exe" Using native(wrapped) libpthread.so.0 Using native(wrapped) libdl.so.2 Using native(wrapped) libc.so.6 Using native(wrapped) ld-linux.so.2 Using native(wrapped) librt.so.1 Using emulated /home/pi/wine/bin/../lib/wine/ntdll.so Using native(wrapped) libm.so.6 Debug level is 1 Dynarec for ARMv8, with extension: HALF FAST_MULT EDSP NEON VFPv4 IDIVA PageSize:4096 Box86 with Dynarec v0.2.5 31a98887 built on Jan 10 2022 08:53:20 BOX86: Wine detected, WINEPRELOADRESERVE="" Using default BOX86_LD_LIBRARY_PATH: ./:lib/:lib32/:x86/ Using default BOX86_PATH: ./:bin/ Counted 46 Env var Looking for /home/pi/wine/bin/wine argv[1]="Winlink_Express_install.exe" Using native(wrapped) libpthread.so.0 Using native(wrapped) libdl.so.2 Using native(wrapped) libc.so.6 Using native(wrapped) ld-linux.so.2 Using native(wrapped) librt.so.1 Using emulated /home/pi/wine/bin/../lib/wine/ntdll.so Using native(wrapped) libm.so.6 Using emulated /home/pi/wine/lib/wine/../libwine.so.1 Error loading needed lib /home/pi/wine/lib/wine/kernel32.so Warning: Cannot dlopen("/home/pi/wine/lib/wine/kernel32.so"/0x65081c18, 2) Error loading needed lib /home/pi/wine/lib/wine/kernelbase.so Warning: Cannot dlopen("/home/pi/wine/lib/wine/kernelbase.so"/0x6508a4a0, 2) Error loading needed lib /home/pi/wine/lib/wine/comctl32.so Warning: Cannot dlopen("/home/pi/wine/lib/wine/comctl32.so"/0x650af580, 2) Error loading needed lib /home/pi/wine/lib/wine/advapi32.so Warning: Cannot dlopen("/home/pi/wine/lib/wine/advapi32.so"/0x650b0138, 2) Error loading needed lib /home/pi/wine/lib/wine/sechost.so Warning: Cannot dlopen("/home/pi/wine/lib/wine/sechost.so"/0x650b0678, 2) Using emulated /home/pi/wine/lib/wine/ucrtbase.dll.so Error loading needed lib /home/pi/wine/lib/wine/ucrtbase.so Warning: Cannot dlopen("/home/pi/wine/lib/wine/ucrtbase.so"/0x650b10a8, 2) Using emulated /home/pi/wine/lib/wine/gdi32.so Error loading needed lib /home/pi/wine/lib/wine/imm32.so Warning: Cannot dlopen("/home/pi/wine/lib/wine/imm32.so"/0x650e6e48, 2) Using emulated /home/pi/wine/lib/wine/user32.so Error loading needed lib /home/pi/wine/lib/wine/setupapi.so Warning: Cannot dlopen("/home/pi/wine/lib/wine/setupapi.so"/0x650ef7d8, 2) Error loading needed lib /home/pi/wine/lib/wine/rpcrt4.so Warning: Cannot dlopen("/home/pi/wine/lib/wine/rpcrt4.so"/0x650eff28, 2) Error loading needed lib /home/pi/wine/lib/wine/version.so Warning: Cannot dlopen("/home/pi/wine/lib/wine/version.so"/0x650f12a8, 2) Error loading needed lib /home/pi/wine/lib/wine/usp10.so Warning: Cannot dlopen("/home/pi/wine/lib/wine/usp10.so"/0x650f17b0, 2) Error loading needed lib /home/pi/wine/lib/wine/oleaut32.so Warning: Cannot dlopen("/home/pi/wine/lib/wine/oleaut32.so"/0x650f1ab0, 2) Error loading needed lib /home/pi/wine/lib/wine/ole32.so Warning: Cannot dlopen("/home/pi/wine/lib/wine/ole32.so"/0x650ed090, 2) Error loading needed lib /home/pi/wine/lib/wine/combase.so Warning: Cannot dlopen("/home/pi/wine/lib/wine/combase.so"/0x650ed490, 2) Using emulated /home/pi/wine/lib/wine/netapi32.dll.so Error loading needed lib /home/pi/wine/lib/wine/netapi32.so Warning: Cannot dlopen("/home/pi/wine/lib/wine/netapi32.so"/0x650f3728, 2) Using emulated /home/pi/wine/lib/wine/iphlpapi.dll.so Using native(wrapped) libresolv.so.2 Error loading needed lib /home/pi/wine/lib/wine/iphlpapi.so Warning: Cannot dlopen("/home/pi/wine/lib/wine/iphlpapi.so"/0x650f56a8, 2) Using emulated /home/pi/wine/lib/wine/ws2_32.dll.so Error loading needed lib /home/pi/wine/lib/wine/ws2_32.so Warning: Cannot dlopen("/home/pi/wine/lib/wine/ws2_32.so"/0x65101e10, 2) Using emulated /home/pi/wine/lib/wine/dnsapi.dll.so Look for dn_expand in loaded elfs 18749|SIGSEGV @0x402eb1e0 (_dl_vsym (/lib/arm-linux-gnueabihf/libc.so.6)) (x86pc=0x6501302b/???:"???", esp=0x31df2c, stack=0x40b64000:0x41364000 own=(nil) fp=0x31df68), for accessing 0x1c5 (code=1/prot=0), db=(nil)((nil):(nil)/(nil):(nil)/???:clean, hash:0/0) 00fc:err:seh:NtRaiseException Unhandled exception code c0000005 flags 0 addr 0x6501302b pi@raspberrypi:~/WL $ ```
ptitSeb commented 2 years ago

in the file elfs/elfloaders.c in function dl_iterate_phdr_findsymbol (so lines 1649-1698) In line 1681 can you add printf_log(LOG_NONE, "v->vd_version=%d v->vd_flags=%d, v->vd_cnt=%d\n", v->vd_version, vd_flags, v->vd_cnt); to start getting more details on what is going on.

WheezyE commented 2 years ago

Sorry for the delays. I pasted the line on either side of line 1681 (looks like the following pictures) and then compiled box86 image image but make crashed in both cases with:

In file included from /home/pi/box86/box86/src/elfs/elfloader.c:17:
/home/pi/box86/box86/src/elfs/elfloader.c: In function ‘dl_iterate_phdr_findsymbol’:
/home/pi/box86/box86/src/elfs/elfloader.c:1682:112: error: ‘vd_flags’ undeclared (first use in this function); did you mean ‘x87flags_t’?
 NONE, "v->vd_version=%d v->vd_flags=%d, v->vd_cnt=%d\n", v->vd_version, vd_flags, v->vd_cnt);
                                                                         ^~~~~~~~

/home/pi/box86/box86/src/include/debug.h:47:66: note: in definition of macro ‘printf_log’
 #define printf_log(L, ...) do {if(L<=box86_log) {fprintf(ftrace, __VA_ARGS__); fflush(ftrace);}} while(0)
                                                                  ^~~~~~~~~~~
/home/pi/box86/box86/src/elfs/elfloader.c:1682:112: note: each undeclared identifier is reported only once for each function it appears in
 NONE, "v->vd_version=%d v->vd_flags=%d, v->vd_cnt=%d\n", v->vd_version, vd_flags, v->vd_cnt);
                                                                         ^~~~~~~~

/home/pi/box86/box86/src/include/debug.h:47:66: note: in definition of macro ‘printf_log’
 #define printf_log(L, ...) do {if(L<=box86_log) {fprintf(ftrace, __VA_ARGS__); fflush(ftrace);}} while(0)
                                                                  ^~~~~~~~~~~
make[2]: *** [CMakeFiles/box86.dir/build.make:414: CMakeFiles/box86.dir/src/elfs/elfloader.c.o] Error 1
make[1]: *** [CMakeFiles/Makefile2:93: CMakeFiles/box86.dir/all] Error 2
make: *** [Makefile:163: all] Error 2
pi@raspberrypi:~/box86 $ 
WheezyE commented 2 years ago

Not sure if this helps or if this is right, but I tried I adding this line printf_log(LOG_NONE, "v->vd_version=%d v->vd_flags=%d, v->vd_cnt=%d\n", v->vd_version, v->vd_cnt); (I just removed the "vd_flags, " part) as line 1681 (placed like the first picture - before the if statement) and was able to compile box86.

I got this output:

pi@raspberrypi:~/WL $ wine Winlink_Express_install.exe 
Box86 with Dynarec v0.2.5 31a98887 built on Jan 14 2022 20:09:10
Box86 with Dynarec v0.2.5 31a98887 built on Jan 14 2022 20:09:10
Box86 with Dynarec v0.2.5 31a98887 built on Jan 14 2022 20:09:10
v->vd_version=1 v->vd_flags=1, v->vd_cnt=1077555856
v->vd_version=1 v->vd_flags=1, v->vd_cnt=1077555856
0024:err:seh:NtRaiseException Unhandled exception code c0000005 flags 0 addr 0x638c402b
pi@raspberrypi:~/WL $ 
Log 1 output here ``` pi@raspberrypi:~/WL $ BOX86_LOG=1 wine Winlink_Express_install.exe Debug level is 1 Dynarec for ARMv8, with extension: HALF FAST_MULT EDSP NEON VFPv4 IDIVA PageSize:4096 Box86 with Dynarec v0.2.5 31a98887 built on Jan 14 2022 20:09:10 BOX86: Wine detected, WINEPRELOADRESERVE="" Using default BOX86_LD_LIBRARY_PATH: ./:lib/:lib32/:x86/ Using default BOX86_PATH: ./:bin/ Counted 45 Env var Looking for /home/pi/wine/bin/wine argv[1]="Winlink_Express_install.exe" Using native(wrapped) libpthread.so.0 Using native(wrapped) libdl.so.2 Using native(wrapped) libc.so.6 Using native(wrapped) ld-linux.so.2 Using native(wrapped) librt.so.1 Using emulated /home/pi/wine/bin/../lib/wine/ntdll.so Using native(wrapped) libm.so.6 Debug level is 1 Dynarec for ARMv8, with extension: HALF FAST_MULT EDSP NEON VFPv4 IDIVA PageSize:4096 Box86 with Dynarec v0.2.5 31a98887 built on Jan 14 2022 20:09:10 BOX86: Wine detected, WINEPRELOADRESERVE="" Using default BOX86_LD_LIBRARY_PATH: ./:lib/:lib32/:x86/ Using default BOX86_PATH: ./:bin/ Counted 46 Env var Looking for /home/pi/wine/bin/wine argv[1]="Winlink_Express_install.exe" Using native(wrapped) libpthread.so.0 Using native(wrapped) libdl.so.2 Using native(wrapped) libc.so.6 Using native(wrapped) ld-linux.so.2 Using native(wrapped) librt.so.1 Using emulated /home/pi/wine/bin/../lib/wine/ntdll.so Using native(wrapped) libm.so.6 Using emulated /home/pi/wine/lib/wine/../libwine.so.1 Error loading needed lib /home/pi/wine/lib/wine/kernel32.so Warning: Cannot dlopen("/home/pi/wine/lib/wine/kernel32.so"/0x640c3c30, 2) Error loading needed lib /home/pi/wine/lib/wine/kernelbase.so Warning: Cannot dlopen("/home/pi/wine/lib/wine/kernelbase.so"/0x640cc460, 2) Error loading needed lib /home/pi/wine/lib/wine/comctl32.so Warning: Cannot dlopen("/home/pi/wine/lib/wine/comctl32.so"/0x640f1568, 2) Error loading needed lib /home/pi/wine/lib/wine/advapi32.so Warning: Cannot dlopen("/home/pi/wine/lib/wine/advapi32.so"/0x640f2120, 2) Error loading needed lib /home/pi/wine/lib/wine/sechost.so Warning: Cannot dlopen("/home/pi/wine/lib/wine/sechost.so"/0x640f2660, 2) Using emulated /home/pi/wine/lib/wine/ucrtbase.dll.so Error loading needed lib /home/pi/wine/lib/wine/ucrtbase.so Warning: Cannot dlopen("/home/pi/wine/lib/wine/ucrtbase.so"/0x640f3090, 2) Using emulated /home/pi/wine/lib/wine/gdi32.so Error loading needed lib /home/pi/wine/lib/wine/imm32.so Warning: Cannot dlopen("/home/pi/wine/lib/wine/imm32.so"/0x64128e20, 2) Using emulated /home/pi/wine/lib/wine/user32.so Error loading needed lib /home/pi/wine/lib/wine/setupapi.so Warning: Cannot dlopen("/home/pi/wine/lib/wine/setupapi.so"/0x641317b0, 2) Error loading needed lib /home/pi/wine/lib/wine/rpcrt4.so Warning: Cannot dlopen("/home/pi/wine/lib/wine/rpcrt4.so"/0x64131f00, 2) Error loading needed lib /home/pi/wine/lib/wine/version.so Warning: Cannot dlopen("/home/pi/wine/lib/wine/version.so"/0x64133280, 2) Error loading needed lib /home/pi/wine/lib/wine/usp10.so Warning: Cannot dlopen("/home/pi/wine/lib/wine/usp10.so"/0x64133760, 2) Error loading needed lib /home/pi/wine/lib/wine/oleaut32.so Warning: Cannot dlopen("/home/pi/wine/lib/wine/oleaut32.so"/0x64133a60, 2) Error loading needed lib /home/pi/wine/lib/wine/ole32.so Warning: Cannot dlopen("/home/pi/wine/lib/wine/ole32.so"/0x6412f050, 2) Error loading needed lib /home/pi/wine/lib/wine/combase.so Warning: Cannot dlopen("/home/pi/wine/lib/wine/combase.so"/0x6412f400, 2) Using emulated /home/pi/wine/lib/wine/netapi32.dll.so Error loading needed lib /home/pi/wine/lib/wine/netapi32.so Warning: Cannot dlopen("/home/pi/wine/lib/wine/netapi32.so"/0x64135688, 2) Using emulated /home/pi/wine/lib/wine/iphlpapi.dll.so Using native(wrapped) libresolv.so.2 Error loading needed lib /home/pi/wine/lib/wine/iphlpapi.so Warning: Cannot dlopen("/home/pi/wine/lib/wine/iphlpapi.so"/0x64137400, 2) Using emulated /home/pi/wine/lib/wine/ws2_32.dll.so Error loading needed lib /home/pi/wine/lib/wine/ws2_32.so Warning: Cannot dlopen("/home/pi/wine/lib/wine/ws2_32.so"/0x64143db8, 2) Using emulated /home/pi/wine/lib/wine/dnsapi.dll.so Look for dn_expand in loaded elfs v->vd_version=1 v->vd_flags=1, v->vd_cnt=-72537977 v->vd_version=1 v->vd_flags=1, v->vd_cnt=-72537977 5479|SIGSEGV @0x402af1e0 (_dl_vsym (/lib/arm-linux-gnueabihf/libc.so.6)) (x86pc=0x6405502b/???:"???", esp=0x31df2c, stack=0x40b28000:0x41328000 own=(nil) fp=0x31df68), for accessing 0x1c5 (code=1/prot=0), db=(nil)((nil):(nil)/(nil):(nil)/???:clean, hash:0/0) 0114:err:seh:NtRaiseException Unhandled exception code c0000005 flags 0 addr 0x6405502b pi@raspberrypi:~/WL $ ```
rajdakin commented 2 years ago

I think there was simply a v-> missing, such that the line should have been printf_log(LOG_NONE, "v->vd_version=%d v->vd_flags=%d, v->vd_cnt=%d\n", v->vd_version, v->vd_flags, v->vd_cnt);.

ptitSeb commented 2 years ago

Yeah, bad copy/paste...

Anyway, I reproduce something similar on my side, so I have enough information for now.

WheezyE commented 2 years ago

I just built 34b99bfe and can confirm that the installer is working again.

Thank you ptitSeb and Rajdakin! I’ll close this ticket.