After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 646300 - shell leaks at logout
shell leaks at logout
Status: RESOLVED FIXED
Product: NetworkManager
Classification: Platform
Component: API
git master
Other Linux
: Normal normal
: ---
Assigned To: Dan Williams
Dan Williams
Depends on:
Blocks:
 
 
Reported: 2011-03-31 03:20 UTC by Matthias Clasen
Modified: 2011-03-31 18:31 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
stacktrace (6.32 KB, text/plain)
2011-03-31 03:20 UTC, Matthias Clasen
Details

Description Matthias Clasen 2011-03-31 03:20:56 UTC
Created attachment 184760 [details]
stacktrace

Recently, I see gnome-shell leak out of my session at logout.
The attached stacktrace seems to put the blame squarely at NetworkManager,
via nm_utils_deinit.
Comment 1 Dan Winship 2011-03-31 14:12:13 UTC
nm_utils_deinit() calls crypto-nss.c:crypto_deinit(), which calls PR_Cleanup(), which attempts to destroy all NSPR mutexes and wait for all NSPR threads to exit, which obviously isn't going to happen, since we are inside a callback from spidermonkey at the time.

IMHO there are two bugs here:

    - NM shouldn't be installing an atexit() handler, because atexit() is
      evil. Also, you don't need to call PR_Cleanup() anyway, and in fact,
      the current recommendation seems to be that you *shouldn't* call it:
      https://bugzilla.mozilla.org/show_bug.cgi?id=54189#c1

    - gdk_x_io_error() should be calling _exit() rather than exit() anyway

I filed bug 646338 for the gdk bug, so reassigning this to NM
Comment 2 Dan Williams 2011-03-31 18:31:56 UTC
5b0ef4c201ca8556ac7337427183aa8c80f73b55 (master)
88941c8eb91cf3e956d8441767c3fe0fe310ba4f (0.8.x)