[Bug 59236] New: The Second Life official viewer crashes during login under Wine
http://bugs.winehq.org/show_bug.cgi?id=59236 Bug ID: 59236 Summary: The Second Life official viewer crashes during login under Wine Product: Wine Version: 11.0-rc5 Hardware: x86-64 OS: Linux Status: UNCONFIRMED Severity: normal Priority: P2 Component: -unknown Assignee: wine-bugs@list.winehq.org Reporter: sldev@free.fr Distribution: --- Created attachment 80144 --> http://bugs.winehq.org/attachment.cgi?id=80144 Crash backtrace The current official Second Life viewer (which is not available for native Linux unlike some trird parties viewers) crashes during the login process under Wine (tested with Wine 10.2 and Wine 11.0-rc3/rc4/rc5). Repro steps: - If you don't yet have one, create a Second Life account/avatar (it's free). - Download the current official viewer: https://viewer-download.secondlife.com/Viewer_7/Second_Life_7_2_3_1937569530... - rm -rf ~/.wine;winecfg (i.e. start with a fresh prefix, just to eliminate any other issue). - Install the viewer. - At the end of the installation process, the SLVersionChecker.exe program that is launched will crash (see the SLVersionCheckerCrash.png screenshot in the attached zip file), but this is a known issue that can easily be worked around: simply delete or rename "~/.wine/drive_c/Program Files/SecondLife/SLVersionChecker.exe" (this updater program is not required to run the viewer itself). - Launch the viewer (it will complain with a dialog about the missing version checker: just acknowledge with "OK"), enter your account/avatar credentials, then log-in. - Observe the crash around the end of the login process (progress bar around 85%). Attached is the file with the backtrace info, which seems to point to an issue in bssndrpt64. -- Do not reply to this email, post in Bugzilla using the above URL to reply. You are receiving this mail because: You are watching all bug changes.
http://bugs.winehq.org/show_bug.cgi?id=59236 Louis Lenders <xerox.xerox2000x@gmail.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Ever confirmed|0 |1 Keywords| |download URL| |https://viewer-download.sec | |ondlife.com/Viewer_7/Second | |_Life_7_2_3_19375695301_x86 | |_64_Setup.exe Status|UNCONFIRMED |NEEDINFO CC| |xerox.xerox2000x@gmail.com --- Comment #1 from Louis Lenders <xerox.xerox2000x@gmail.com> --- Hi, Could you also post the console output before the crash? FYI: I cannot reproduce this crash. I created account and installed the program. The crash with SLVersionChecker.exe is due to powershell.exe being a complete stub program. After starting the program it just exited for me with an error seemingly related to error message from the program: LLGLSLShader::bind : ASSERT (mProgramObject != 0) I think (guess) this is due to my crappy old Intel builtin GPU (I'm trying this on a laptop ~10 years old). After trying some things I got it running by forcing zink to be used : MESA_LOADER_DRIVER_OVERRIDE=zink WINEDLLOVERRIDES=powershell.exe=d wine SecondLifeViewer.exe This allowed the program to start for me. (this zink override is probably not needed on a decent GPU???) -- Do not reply to this email, post in Bugzilla using the above URL to reply. You are receiving this mail because: You are watching all bug changes.
http://bugs.winehq.org/show_bug.cgi?id=59236 --- Comment #2 from sldev <sldev@free.fr> --- Created attachment 80149 --> http://bugs.winehq.org/attachment.cgi?id=80149 Warnings printed by Wine on sdterr -- Do not reply to this email, post in Bugzilla using the above URL to reply. You are receiving this mail because: You are watching all bug changes.
http://bugs.winehq.org/show_bug.cgi?id=59236 --- Comment #3 from sldev <sldev@free.fr> --- (In reply to Louis Lenders from comment #1)
Hi, Could you also post the console output before the crash?
I attached wine-warnings.zip with the output. Some relevant lines seem to be: libEGL warning: pci id for fd 317: 10de:2488, driver (null) pci id for fd 319: 10de:2488, driver (null) pci id for fd 320: 10de:2488, driver (null) libEGL warning: egl: failed to create dri2 screen And the crash happens at: wine: Unhandled page fault on read access to 0000000000000878 at address 00000001405EF4AF (thread 00f4), starting debugger... Note that, this time, I tested on a second PC, with a brand new guest account, just to be sure there's nothing "odd" on the first PC on which I got the crash. Also, the crash happens both for non-privilegded users and for root.
FYI: I cannot reproduce this crash. .../... This allowed the program to start for me. (this zink override is probably not needed on a decent GPU???)
Oh, yes, you'd likely need a proper GPU to get the crash... Both of the PCs I got the crash with are equipped with NVIDIA cards (RTX 5070 Ti and RTX 3070). -- Do not reply to this email, post in Bugzilla using the above URL to reply. You are receiving this mail because: You are watching all bug changes.
http://bugs.winehq.org/show_bug.cgi?id=59236 --- Comment #4 from Louis Lenders <xerox.xerox2000x@gmail.com> --- (In reply to sldev from comment #3)
(In reply to Louis Lenders from comment #1)
Hi, Could you also post the console output before the crash?
I attached wine-warnings.zip with the output.
Some relevant lines seem to be: libEGL warning: pci id for fd 317: 10de:2488, driver (null) pci id for fd 319: 10de:2488, driver (null) pci id for fd 320: 10de:2488, driver (null) libEGL warning: egl: failed to create dri2 screen And the crash happens at: wine: Unhandled page fault on read access to 0000000000000878 at address 00000001405EF4AF (thread 00f4), starting debugger...
Hi, your log contains a bunch of serious errors that I guess you first need to fix: 0564:err:winediag:NtCreateFile Too many open files, ulimit -n probably needs to be increased 087c:err:module:import_dll Loading library IPHLPAPI.DLL (which is needed by L"D:\\.wine\\drive_c\\Program Files\\SecondLifeViewer\\llplugin\\libcef.dll") failed (error c000011f). - Have you tried increase it? These errors really should be fixed first I guess. -Also it might be worth (if it still crashes) to try disable EGL and see if that changes anything (Create the registry key HKEY_CURRENT_USER\Software\Wine\X11 Driver\UseEGL and set it to "N") -- Do not reply to this email, post in Bugzilla using the above URL to reply. You are receiving this mail because: You are watching all bug changes.
http://bugs.winehq.org/show_bug.cgi?id=59236 --- Comment #5 from sldev <sldev@free.fr> --- (In reply to Louis Lenders from comment #4)
Hi, your log contains a bunch of serious errors that I guess you first need to fix:
0564:err:winediag:NtCreateFile Too many open files, ulimit -n probably needs to be increased 087c:err:module:import_dll Loading library IPHLPAPI.DLL (which is needed by L"D:\\.wine\\drive_c\\Program Files\\SecondLifeViewer\\llplugin\\libcef.dll") failed (error c000011f).
- Have you tried increase it? These errors really should be fixed first I guess.
CEF is only used as a (web) plugin by the viewer (it is ran from an independent "SLPlugin.exe" program, and when a plugin crashes, it does not crash the viewer itself which keeps happily chugging along). And yes, CEF has a lot of issues under Wine, and not only with the SL viewer: some CEF-based games (e.g. the ones made with RPG Maker) are also screwed up, with crashes or bad display, depending on the Wine version I am using, the "best" version so far for me being 10.2, with which CEF works fine (no display quirks) and does not crash too often (it does with the SL viewer, sometimes, at launch, indeed likely because of that ulimit issue). For the posted Wine log, I did see that warning on my first try and consequently retried with an increased ulimit for max opened files from 1000 to 2000 (the max I can get for a non-privileged user, but it's apparently not enough), and even to 1000000 for root (which solves this issue), and I'm still getting crashes nonetheless (even though, in the 'root' case, there's no more any such warning).
-Also it might be worth (if it still crashes) to try disable EGL and see if that changes anything (Create the registry key HKEY_CURRENT_USER\Software\Wine\X11 Driver\UseEGL and set it to "N")
Creating and setting this registry key indeed removes the EGL warnings but does not solve the crashes I'm seeing (tested with root too, to avoid the ulimit issue): I'm attaching below the corresponding backtrace + stderr output as "SLviewerNoEGL.zip". Oh, I should also mention that all my Linux systems use vanilla X11 (and no compositor), with (X)Wayland not even installed. Wine (personal builds since my distro only provides an antique Wine version) is itself built without Wayland support (i.e. configured with 'configure --prefix=/usr --enable-win64 --with-dbus --without-wayland'). Note that older SL official viewer versions, and some Third Party Viewers (TPVs) Windows builds do (more or less) work under Wine (still very crashy, but at least you can run a reasonably long session), so there must be some recent change in the SL viewer that is causing this crash at login under Wine (no problem seen under bare metal Windows)... -- Do not reply to this email, post in Bugzilla using the above URL to reply. You are receiving this mail because: You are watching all bug changes.
http://bugs.winehq.org/show_bug.cgi?id=59236 --- Comment #6 from sldev <sldev@free.fr> --- Created attachment 80150 --> http://bugs.winehq.org/attachment.cgi?id=80150 Backtrace + Wine sdterr log with EGL disabled and unlimited max open files -- Do not reply to this email, post in Bugzilla using the above URL to reply. You are receiving this mail because: You are watching all bug changes.
http://bugs.winehq.org/show_bug.cgi?id=59236 --- Comment #7 from Louis Lenders <xerox.xerox2000x@gmail.com> --- Hi, As I can login just fine, and the viewer starts fine here, it might be useful to attach a +relay debuglog here. And I can confirm that disabling libcef doesn't affect the start of the program (though a got a warning messagebox) Could you run like: WINEDLLOVERRIDES=powershell.exe,libcef=d WINEDEBUG=+relay,+seh wine SecondLifeViewer.exe &>/tmp/log and attach ,after bzipping it, it here or put it up somewhere? ( Last remark: You said you built wine yourself; to rule out that that might be the issue, it might be worth to try a prebuilt wine to see if that changes anything. I always use the builts from kron4ek: cd /tmp wget https://github.com/Kron4ek/Wine-Builds/releases/download/11.0-rc3/wine-11.0-... tar xvf wine-11.0-rc3-amd64.tar.xz /tmp/wine-11.0-rc3-amd64.tar//tmp/wine-11.0-rc3-amd64/bin/wine SecondLifeViewer.exe ) -- Do not reply to this email, post in Bugzilla using the above URL to reply. You are receiving this mail because: You are watching all bug changes.
http://bugs.winehq.org/show_bug.cgi?id=59236 --- Comment #8 from sldev <sldev@free.fr> --- Created attachment 80151 --> http://bugs.winehq.org/attachment.cgi?id=80151 Debug logs with +seh, +seh and prebuilt-wine 11.0-rc3, +seh +relay (head and tail of log, 100k lines each) -- Do not reply to this email, post in Bugzilla using the above URL to reply. You are receiving this mail because: You are watching all bug changes.
http://bugs.winehq.org/show_bug.cgi?id=59236 --- Comment #9 from sldev <sldev@free.fr> --- (In reply to Louis Lenders from comment #7)
Could you run like:
WINEDLLOVERRIDES=powershell.exe,libcef=d WINEDEBUG=+relay,+seh wine SecondLifeViewer.exe &>/tmp/log
and attach ,after bzipping it, it here or put it up somewhere?
It's over 30GB big, so even once bzipped, it's a bit too much to handle. :-D You'll therefore find log3-head-100000.txt and log3-tail-100000.txt in the DebugLog.zip archive I just attached: they contain respectively the 100k first and 100k last lines of a session that did crash: sadly, the debugger fails to open when using +relay, so I don't have the corresponding backtrace... Amusingly, when enabling +relay, which causes an enormous slow down of the viewer (3 or so minutes to log in), the bug does not always happen, and sometimes the viewer does not crash. This could be the sign of some race condition at play: maybe Wine is failing to take a lock on some resource (the viewer is heavily threaded and when slowing things down, race conditions might become less likely to happen)... You will also find backtrace.txt and full log.txt files for a session done with just +seh.
You said you built wine yourself; to rule out that that might be the issue,
FYI, I've been building Wine for many, many years (IIRC my first personal Wine build was 3.0). But to reassure you and rule out such an issue:
it might be worth to try a prebuilt wine to see if that changes anything. I always use the builts from kron4ek:
Did this (also fully uninstalled my own Wine build before using your pre-built Wine, and used proper PATH and LD_LIBRARY_PATH exports to the unpacked Wine binaries). Exact same result (with the exception of a new "wine: failed to start L"C:\\windows\\system32\\winemenubuilder.exe": c0000135" warning, due to the fact that, unlike mine, your pre-built Wine does not have the wine32 stuff included). See the log2.txt and backtrace2.txt for the corresponding session/crash. -- Do not reply to this email, post in Bugzilla using the above URL to reply. You are receiving this mail because: You are watching all bug changes.
http://bugs.winehq.org/show_bug.cgi?id=59236 --- Comment #10 from Louis Lenders <xerox.xerox2000x@gmail.com> --- (In reply to sldev from comment #9)
Amusingly, when enabling +relay, which causes an enormous slow down of the viewer (3 or so minutes to log in), the bug does not always happen, and sometimes the viewer does not crash. This could be the sign of some race condition at play:
I guess you could be right; that makes it really hard for now to get useful traces I fear :( For now I'm a bit out of ideas. You could also test you're theory if running like below (which should give a reasonable time to login) is a way to prevent the crash: WINEDEBUG=+relay,+seh wine SecondLifeViewer.exe &>/dev/null If -- Do not reply to this email, post in Bugzilla using the above URL to reply. You are receiving this mail because: You are watching all bug changes.
http://bugs.winehq.org/show_bug.cgi?id=59236 --- Comment #11 from sldev <sldev@free.fr> --- (In reply to Louis Lenders from comment #10)
(In reply to sldev from comment #9) You could also test you're theory if running like below (which should give a reasonable time to login) is a way to prevent the crash:
WINEDEBUG=+relay,+seh wine SecondLifeViewer.exe &>/dev/null
Just tried this: in 12 attempts, the viewer crashed 8 times, 2 attempts led to a stuck login progress bar (no full login achieved), and the 2 remaining attempts did allow me to log in but my avatar was missing its whole inventory and could therefore not "rez". Definitely not a valid workaround... :-D -- Do not reply to this email, post in Bugzilla using the above URL to reply. You are receiving this mail because: You are watching all bug changes.
participants (1)
-
WineHQ Bugzilla