Since working on our 5.0 release I've noticed a zombie process spawned from LO. sberg pointed me to glxtest, which I could verify to be the culprit. The original problem is OpenGLHelper::isVCLOpenGLEnabled(), which calls officecfg::Office::Common::VCL::ForceOpenGL::get(), which throws an exception in comphelper::getProcessServiceFactory(), which is caught somewhere down the stack, and now can't cleanup the Zombie and misses some of the OpenGL stuff. Actually I'm amazed that LO still manages to run with an unexpected exception in the OpenGL code :-) I could verify that this problem happens with all non-Gtk+ based X11 VCL plugins (kde4, gen, tde). In the end I did two debug runs with backtrace breakpoints for Gtk+ and KDE4 (AKA break with command ; bt ; c ; end). This pointed to the commit "wait until we know the UI language before initializing gtk" - http://cgit.freedesktop.org/libreoffice/core/commit/?id=d07e7d692ddd2a9ab956a59bcc0f676c7d76bc10 At this point application initialization was split, with the Gtk+ i18n stuff depending on it. From the attached debug logs: #15 0x00002aaab118a514 in CreateSalInstance() () at /home/glg/Development/libreoffice/symbols/vcl/unx/generic/plugadapt/salplug.cxx:240 #16 0x00002aaab1107780 in InitVCL() () at /home/glg/Development/libreoffice/symbols/vcl/source/app/svmain.cxx:290 and #14 0x00002aaac40a122b in GtkInstance::AfterAppInit() (this=0x754c50) at /home/glg/Development/libreoffice/symbols/vcl/unx/gtk/gtkinst.cxx:175 #15 0x00002aaab11078a8 in InitVCL() () at /home/glg/Development/libreoffice/symbols/vcl/source/app/svmain.cxx:304 So Gtk+ now delays some initialization, especially the problematic SalDisplay::Init() to AfterAppInit(). I guess it's not the origin of the problem, but something else silently depended on the move. Not sure if it's easier to move the SalDisplay::Init() based init to AfterAppInit() in all other VCL plugins, especially if I see the sprinkling of EnsureInit() everywhere in Gtk+ :-(
Created attachment 127097 [details] GDB session from a Gtk+ based LO start and shutdown
Created attachment 127098 [details] GDB session from a KDE4 based LO start and shutdown
So I investigated the catch point: /home/glg/Development/libreoffice/symbols/vcl/unx/generic/app/saldisp.cxx:231 226 try { 227 bool bUseOpenGL = OpenGLHelper::isVCLOpenGLEnabled(); 228 if (bUseOpenGL && BestOpenGLVisual(pDisplay, nScreen, rVI)) 229 return rVI.visualid == nDefVID; 230 } 231 catch (const css::uno::DeploymentException&) 232 { 233 // too early to try to access configmgr 234 } which was included in commit 37800290245fd0462295a8bbaabd9d761929fa65 "vcl: Stop-gap solution to start the gen / kde / kde4 plugins again." So first I'll revert it, as the try / catch block just pampers over the original breaking commit. I hope this won't break any non-X11 backends, as I can't test them. So for KDE4 I moved the SalKDEDisplay creation to KDESalInstance::AfterAppInit(), which "Works for me". I will look into tde and gen next.
Jan-Marek Glogowski committed a patch related to this issue. It has been pushed to "master": http://cgit.freedesktop.org/libreoffice/core/commit/?id=3bc2b8c5e0c4213b53a974944189bdf7f8155502 tdf#101822 Always de-zombie the glxtest process It will be available in 5.3.0. The patch should be included in the daily builds available at http://dev-builds.libreoffice.org/daily/ in the next 24-48 hours. More information about daily builds can be found at: http://wiki.documentfoundation.org/Testing_Daily_Builds Affected users are encouraged to test the fix and report feedback.
Jan-Marek Glogowski committed a patch related to this issue. It has been pushed to "master": http://cgit.freedesktop.org/libreoffice/core/commit/?id=06283e7b00f9f7b7ad1a3e30d2dcb85c8d550588 tdf#101822 X11 SalDisplay init => AfterAppInit It will be available in 5.3.0. The patch should be included in the daily builds available at http://dev-builds.libreoffice.org/daily/ in the next 24-48 hours. More information about daily builds can be found at: http://wiki.documentfoundation.org/Testing_Daily_Builds Affected users are encouraged to test the fix and report feedback.
Jan-Marek Glogowski committed a patch related to this issue. It has been pushed to "master": http://cgit.freedesktop.org/libreoffice/core/commit/?id=971947b38d1dbc6213e55403cf482a530cd9b449 tdf#101822 Revert "vcl: Stop-gap solution to ... It will be available in 5.3.0. The patch should be included in the daily builds available at http://dev-builds.libreoffice.org/daily/ in the next 24-48 hours. More information about daily builds can be found at: http://wiki.documentfoundation.org/Testing_Daily_Builds Affected users are encouraged to test the fix and report feedback.
Changing status to NEW
Hello Jan-Marek Glogowski, Is this bug fixed? If so, could you please close it as RESOLVED FIXED?
** Please read this message in its entirety before responding ** To make sure we're focusing on the bugs that affect our users today, LibreOffice QA is asking bug reporters and confirmers to retest open, confirmed bugs which have not been touched for over a year. There have been thousands of bug fixes and commits since anyone checked on this bug report. During that time, it's possible that the bug has been fixed, or the details of the problem have changed. We'd really appreciate your help in getting confirmation that the bug is still present. If you have time, please do the following: Test to see if the bug is still present with the latest version of LibreOffice from https://www.libreoffice.org/download/ If the bug is present, please leave a comment that includes the information from Help - About LibreOffice. If the bug is NOT present, please set the bug's Status field to RESOLVED-WORKSFORME and leave a comment that includes the information from Help - About LibreOffice. Please DO NOT Update the version field Reply via email (please reply directly on the bug tracker) Set the bug's Status field to RESOLVED - FIXED (this status has a particular meaning that is not appropriate in this case) If you want to do more to help you can test to see if your issue is a REGRESSION. To do so: 1. Download and install oldest version of LibreOffice (usually 3.3 unless your bug pertains to a feature added after 3.3) from http://downloadarchive.documentfoundation.org/libreoffice/old/ 2. Test your bug 3. Leave a comment with your results. 4a. If the bug was present with 3.3 - set version to 'inherited from OOo'; 4b. If the bug was not present in 3.3 - add 'regression' to keyword Feel free to come ask questions or to say hello in our QA chat: https://kiwiirc.com/nextclient/irc.freenode.net/#libreoffice-qa Thank you for helping us make LibreOffice even better for everyone! Warm Regards, QA Team MassPing-UntouchedBug