Summary: | gnome-base/gnome-shell-3.2.2.1 segfaults in on_apps_tree_changed_cb() | ||
---|---|---|---|
Product: | Gentoo Linux | Reporter: | Andrew Hamilton <andrew> |
Component: | [OLD] GNOME | Assignee: | Gentoo Linux Gnome Desktop Team <gnome> |
Status: | RESOLVED NEEDINFO | ||
Severity: | normal | ||
Priority: | Normal | ||
Version: | unspecified | ||
Hardware: | All | ||
OS: | Linux | ||
See Also: | https://bugzilla.gnome.org/show_bug.cgi?id=670418 | ||
Whiteboard: | |||
Package list: | Runtime testing required: | --- | |
Attachments: |
:0.log
:0-greeter.log :0-slave.log :0.log :0-greeter.log :0-slave.log abrt backtrace gnome-shell patch to test :0-greeter.log |
Description
Andrew Hamilton
2012-02-19 05:08:17 UTC
Please attach /var/log/gdm/:0.log, /var/log/gdm/:0-greeter.log, and /var/log/gdm/:0-slave.log. Created attachment 302463 [details]
:0.log
Created attachment 302465 [details]
:0-greeter.log
Created attachment 302467 [details]
:0-slave.log
(In reply to comment #2) > Created attachment 302463 [details] > :0.log This is the problem: (EE) NVIDIA(0): Failed to initialize the GLX module; please check in your X (EE) NVIDIA(0): log file that the GLX module has been loaded in your X (EE) NVIDIA(0): server, and that the module is the NVIDIA GLX module. If (EE) NVIDIA(0): you continue to encounter problems, Please try (EE) NVIDIA(0): reinstalling the NVIDIA driver. I strongly suspect that this glx failure is the cause of the gnome-shell segfault and the gnome-session-check-accelerated failure that can be seen in :0-greeter.log. See http://www.gentoo.org/doc/en/nvidia-guide.xml for an introduction to configuring nvidia-drivers in Gentoo. Please reopen this bug if the gnome-shell segfault still occurs after you have an nvidia-drivers setup with correctly working glx on your machine. Created attachment 302473 [details]
:0.log
Created attachment 302475 [details]
:0-greeter.log
Created attachment 302479 [details]
:0-slave.log
I've fixed the nvidia GLX errors in xorg and have attached updated logs. gnome-session continues to segfault with the same errors. Please let me know if you need any more information. (In reply to comment #9) > I've fixed the nvidia GLX errors in xorg and have attached updated logs. > gnome-session continues to segfault with the same errors. Please let me know > if you need any more information. Yes - we need a backtrace of the crash. To get it, please do the following: 1. please re-emerge gnome-shell, clutter, cogl, gjs, spidermonkey, glib, and gobject-introspection with "-ggdb" in CFLAGS and "splitdebug" in FEATURES (see http://www.gentoo.org/proj/en/qa/backtraces.xml) 2. emerge app-admin/abrt 3. /etc/init.d/abrt start 4. get the gdm's gnome-shell process to segfault 5. From a terminal or a console, run "abrt-cli list". You will see a list of reported crashes. Probably the most recent one will be gnome-shell listed as "@0". 6. Run "abrt-cli report @0" (or @1, etc., depending on how the most recent gnome-shell crash was listed). 7. When prompted, choose to use the local gnu debugger, and to report using logger. 8. abrt-cli will launch your default console editor (nano, probably), and you will need to save the report file in the default location. 9. You will end up with a file called "backtrace" in a directory starting with /var/spool/abrt/ccpp-2012* or ~/.abrt/spool/ccpp-2012*. Please attach it. Created attachment 302511 [details]
abrt backtrace
Note: Andrew and I have access to the same hardware, so this is from the same box as he was working on. I built the requested packages with splitdebug and -ggdb, installed abrt, segfaulted gdm, and have attached the backtrace.
Created attachment 302533 [details, diff] gnome-shell patch to test (In reply to comment #11) Thanks. From the backtrace, it appears that gnome-shell is crashing because gmenu_tree_load_sync() returns FALSE without setting error, and gnome-shell tries to print error->message while error is NULL. However, after examining the current gnome-menus source, I do not see an execution path where gmenu_tree_load_sync() could fail without setting the error parameter. First of all, to make sure that the diagnosis is correct, please test gnome-shell with the attached patch. Created attachment 302557 [details]
:0-greeter.log
The patch appears to have fixed the bug; gnome-shell no longer segfaults when run as a part of GDM. I have attached an updated :0-greeter.log
(In reply to comment #13) Thanks. The patch that I had attached here is an ugly workaround; the problem needs to be fixed in the gnome-menus library. I have filed a bug with gnome-menus upstream developers at https://bugzilla.gnome.org/show_bug.cgi?id=670418 to figure out why gmenu_tree_load_sync() is failing to set the error parameter on failure: Please add yourself to the upstream bug's CC list because gnome-menus developers may want to ask you some questions. (You will need to create a gnome bugzilla account if you don't have one already.) Is this still a problem with 3.8? NEEDINFO per last query. |