Bug ID: 1199941 Summary: kmozillahelper uses up all X clients given enough logout/login cycles Classification: openSUSE Product: openSUSE Distribution Version: Leap 15.4 Hardware: Other OS: Other Status: NEW Severity: Normal Priority: P5 - None Component: Firefox Assignee: firstname.lastname@example.org Reporter: email@example.com QA Contact: firstname.lastname@example.org Found By: --- Blocker: ---
A couple days ago I ran into the issue of applications no longer starting reliably on my openSUSE Leap 15.4 system. Launching applications like "glxinfo" or "xlsclients" would fail with the error message `Maximum number of clients reached: unable to open display ":0"`.
In searching for the error message I came across https://unix.stackexchange.com/questions/250920/debugging-maximum-number-of-.... Using the method described there to get the application using up the most x client connections, I found that kmozillahelper was using up more than 170 of them. Closing Firefox and one `killall kmozillahelper` later I could reliably start applications again.
While my immediate problem is gone, it seems that there seems to be a leak of kmozillahelper process instances when restoring a KDE session after having logged out with an open Firefox. I.e., on third login after the killall, a `ps aux | grep kmozillahelper` will produce the following:
marix 5109 0.0 0.1 413872 44192 ? Sl 11:10 0:00 /usr/lib/mozilla/kmozillahelper -session 10ca646469000165348143300000027740024_1653489712_189016 marix 5144 0.0 0.1 413872 44184 ? Sl 11:10 0:00 /usr/lib/mozilla/kmozillahelper -session 10ca646469000165348930800000285810021_1653489712_189016 marix 6070 0.2 0.1 416140 46532 ? Sl 11:10 0:00 /usr/lib/mozilla/kmozillahelper
Stopping Firefox will kill the process that does not have a -session argument. However, if I logout without closing Firefox first, the next login will show four kmozillahelper processes of which three have a with -session. The two already existing in the current session, and a third one with a new sessionid.
As the session-id-less process instance is properly cleaned up if Firefox is closed during a session, the problem can be worked around by closing Firefox before logging out. However, this kind of contradicts the point of having resumable sessions.
--- Comment #1 from Matthias Bach email@example.com --- Note that while I only noticed the issue a couple days ago, the problem has probably been existing longer, as it takes a while to gather 170 logins. I'd suspect the issue has existed for at least two months, if not longer.