GDM: Greeter application crashing

Bug #48936 reported by Justin J Stark on 2006-06-08
12
Affects Status Importance Assigned to Milestone
gdm (Ubuntu)
Low
Ubuntu Desktop Bugs

Bug Description

Binary package hint: gdm

When logging out (quitting), the gdm themed greeter appears properly, however, when using ctrl+alt+backspace to restart gdm, an error appears along the lines of "The greeter application appears to be crashing." Hitting ok then takes me to the non-themed greeter which works just fine.

To reproduce:
1) Logout out into themed gdm greeter.
2) Ctrl+alt+backspace to restart gdm.

Others have been having similar problems on the ubuntu forums. A few threads of significance:

http://www.ubuntuforums.org/showthread.php?t=190310

http://www.ubuntuforums.org/showthread.php?t=138321

http://www.ubuntuforums.org/showthread.php?t=137383

Some speculate it is a problem with the latest version of libgtk2, however, I was unable to test the previous version as it no longer exists on archive.ubuntu.com.

Daniel Holbach (dholbach) wrote :

Thanks for your bug report. Can you check /var/log/Xorg.*.log, /var/log/gdm/* for anything interesting?

Changed in gdm:
assignee: nobody → desktop-bugs
status: Unconfirmed → Needs Info
Justin J Stark (justinjstark) wrote :

About the only thing that looks fishy is

"error opening security policy file /etc/X11/xserver/SecurityPolicy"

I'll attach my entire /var/log/Xorg.0.log

Also note there has been a few updates to gdm as well as libgtk but gdm still crashes for me. The first time I log out, the themed greeter displays just fine but as soon as I ctrl+alt+backspace it bombs.

/var/log/Xorg.0.log of crashing gdm

log files

nyarla33 (mr-somewhere) wrote :

I have this bug too.
This happened only after Gnome was updated. Then I had this bug:
https://launchpad.net/distros/ubuntu/+source/shadow/+bug/49976
It was fixed with the following updates but the bug mentionned ("Greeter application crashing") above appeared.

Justin J Stark (justinjstark) wrote :

I am no longer experiencing this bug (at least haven't noticed it lately). There have been some libgtk updates (one today) as well as gdm updates recently. On top of that, I am now using the Industrial (ximian) graphical login theme.

If others are still having this problem I suppose I can find some time to play around and attempt to reproduce this problem.

nyarla33 (mr-somewhere) wrote :

I've had these libgtk updates today (as well as others a few days ago) but nothing changed.

Justin J Stark (justinjstark) wrote :

Nevermind, it is still happening for me. It just took 3 or 4 ctrl+alt+backspaces before it crashed.

Sebastien Bacher (seb128) wrote :

note that ctrl-alt-backspace makes xorg go away which is not a proper way to restart gdm, you should use "/etc/init.d/gdm restart"

Sebastien Bacher (seb128) wrote :

Does setting AlwaysRestartServer to true makes a difference?

Changed in gdm:
importance: Untriaged → Low
nyarla33 (mr-somewhere) wrote :

I set
AlwaysRestartServer=true
in
/etc/gdm/gdm.conf
but no difference for me.

MatthewRhodes (matt-rarness) wrote :

I have the same problem every login. I dont know if this helps but I have noticed when I change login style to 'Plain' the error message mentioned appeares, but I get the themed login screen, and when I choose themed style, it gives the error message but loads Gnome Desktop Manager.

Sebastien Bacher (seb128) wrote :

That would be nice if somebody could forward that upstream, maybe they have a better idea on it

Changed in gdm:
status: Needs Info → Unconfirmed
Wolf Halton (saphil) wrote :

In edgy, aptituded up from hoary, I have recently started getting the "greeter appears to be crashing" error when logging out using the gui menu. I noticed it about a week ago, but I rarely logged out before that, except to do a mandated restart. I do not specifically know when it started doing this.

I am using Edgy on a Compaq V2402 laptop (ATi Radeon Xpress 200M with either the Ubuntu repository fglrx driver, a hand-rolled fglrx driver 2.0.6234 / 8.32.5 and a couple of older versions, the radeon or vesa driver).

I get the greeter "appears to be crashing" message with the functioning fall-back greeter.

This is irrespective of whether I have cold started up, rebooted, logged out, or restarted X with Ctrl+Alt+Backspace.

I believe there might be cause to investigate this further, and may not necessarily be a X or driver problem. I will attach relevant bits of /var/log/gdm/:0.log and /var/log/Xorg.0.log from my laptop shortly (later tonight or tomorrow!) but there is mention of

(EE) AIGLX error: dlsym for __driCreateNewScreen_20050727 failed

which sounds like ATi and their hopelessly out of date DRI, and also

(EE) xf86OpenSerial: Cannot open device /dev/wacom (no such file or directory)

Which, like Chess, is a total F mystery...? ;-)

Ruediger (kruecke77) wrote :

(Almost) same here:
Acer Aspire 1650 Laptop (ATI Radeon Mobility M 300 and fglrx driver)
"greeter appears..." message after start up, reboot, log out, or restart X and then the fall back greeter.
This only happens since the last major update (sorry, I haven't kept track of what was updated).

(EE) xf86OpenSerial: Cannot open device /dev/wacom
 No such file or directory.
Error opening /dev/wacom : Invalid argument

Ruediger (kruecke77) wrote :

update: got rid of the "wacom" error, was not related to the problem at hand.

Daniel Holbach (dholbach) wrote :

Is it the 'wacom problem' for everybody?

No. Somehow my xorg.config listed three inputdevices (stylus, eraser, cursor) that are only for tablet PC. when I deleted those sections that refered to /dev/wacom the error entry in the log file disappeared.> From: <email address hidden>> Date: Wed, 7 Feb 2007 11:04:49 +0000> Subject: [Bug 48936] Re: GDM: Greeter application crashing> To: <email address hidden>> > Is it the 'wacom problem' for everybody?> > -- > GDM: Greeter application crashing> https://launchpad.net/bugs/48936
_________________________________________________________________
Testen Sie die neuen Onlinedienste bei Windows Live Ideas - so neu, dass sie noch nicht einmal offiziell veröffentlicht wurden.
http://ideas.live.com

Ok I went on a bit of a goose-chase just to eliminate as many sources of confusion as possible. The wacom thing appears to be irrelevant to this problem. As far as I can figure out, the wacom input drivers are in xorg.conf by default simply so that X on a tablet works nicely out of the box. Commenting out these sections from xorg.conf has no effect (i.e. the greeter still crashes).

So it seems that the greeter is asking X via AIGLX to change the screen resolution, which fails. My screen goes through 3 attempts to set the screen (I get a brief orange-brown background and a spinning mouse cursor for about half a second each time) before it gives up with the error message.

The fall-back greeter appears to work fine.

Assuming my theorising above is correct, I wonder if it is one of those combination errors - i.e. the combination of Xorg 7.1, AIGLX and my particular graphics chipset (ATI Radeon Xpress 200M) whilst fine in other combinations is causing an error in this case.

As noted above, I did not have this problem in dapper, only since upgrading to edgy (in about November), and no combination of edgy xorg updates, different drivers (OSS radeon, several different versions of fglrx, vesa) or xorg.conf configuration has so far succeeded in preventing the greeter from crashing.

See attached /var/log/gdm/:0.log

Any help would be nice... :-) In the meantime, if I get time I might have a trawl through the greeter code to see what is going on (depending on what language it's written in!!!)

Cheers,
Jonathan

By the way, trawling the Ubuntu forums for this bug only turns up the "uncheck the 'Enable accessible login' checkbox in gdmsetup" solution, which has no effect.

Neither does disabling XDMCP, nor fiddling with the themes.

There is a small possibility that it has something to do with the font directory messages in the gdm log:

Could not init font path element /var/lib/defoma/x-ttcidfont-conf.d/dirs/TrueType, removing from list!

I'll try not to spam this thread again until I find something more substantial.

I took the liberty of enabling debug in gdm.conf and relevant bits of log files are attached.

Meanwhile, my C isn't up to an awful lot, much less gtk glib and so on. However, looking in the source I can see that the greeter failing error message is only in one place, from a condition in the gdm_slave_greeter() function in slave.c

daemon/slave.c:2611:
  if G_UNLIKELY (d->try_different_greeter) {
      /* ... call gdm_error_box with the failure message ... */

Following that, d->try_different_greeter is only set in the gdm_cleanup_children() function in gdm.c when the exit status is DISPLAY_GREETERFAILED (defined as 65 in gdm.h line 76), in this block:

daemon/gdm.c:847:
  if (status == DISPLAY_GREETERFAILED) {
      if (d->managetime + 10 >= time (NULL)) {
          d->try_different_greeter = TRUE;
      } else {
          d->try_different_greeter = FALSE;
      }
      /* now just remanage */
      status = DISPLAY_REMANAGE;
  } else {
      d->try_different_greeter = FALSE;
  }

It looks like it is giving up after 10 seconds, so perhaps it is a timing thing? Anyway, I grepped for things that exit with a DISPLAY_GREETERFAILED code and found these:

daemon/slave.c:4692: exit_code_to_use = DISPLAY_GREETERFAILED;
daemon/slave.c:4698: exit_code_to_use = DISPLAY_GREETERFAILED;
gui/gdmcommon.c:94: _exit (DISPLAY_GREETERFAILED);
gui/gdmcommon.c:109: _exit (DISPLAY_GREETERFAILED);

The daemon/slave.c calls are in the gdm_slave_child_handler() function at line 4621 which handles SIGCHLD signals.

The gui/gdmcommon.c references are in the gdm_common_fail_greeter() function, which looks like it tries to log, clean up and exit with DISPLAY_GREETERFAILED. It is called from gui/greeter/greeter.c (and gui/gdmlogin.c, but we're not concerned with that since it is the fall-back greeter, which works).

In gui/greeter/greeter.c, gdm_common_fail_greeter() is called from int main() at line and the process_operation() function contains a switch(op_code), and the default case calls it at line 451.

gui/greeter/greeter.c:451: gdm_common_fail_greeter ("Unexpected greeter command received: '%c'", op_code);
gui/greeter/greeter.c:1089: gdm_common_fail_greeter ("%s: Error setting up %s signal handler: %s", "main",
gui/greeter/greeter.c:1099: gdm_common_fail_greeter ("%s: Error setting up %s signal handler: %s", "main",
gui/greeter/greeter.c:1104: gdm_common_fail_greeter ("%s: Error setting up %s signal handler: %s", "main",
gui/greeter/greeter.c:1114: gdm_common_fail_greeter ("Could not set signal mask!");
gui/greeter/greeter.c:1122: gdm_common_fail_greeter ("Could not set signal mask!");

So it seems to boil down to gui/greeter/greeter.c and scrutinising what int main() is doing, or else I wonder if there is some op_code that isn't being processed by the process_operation() function?

...and syslog output too.

Sebastien Bacher (seb128) wrote :

Could somebody open a bug upstream about that? They know the code better and might have an idea on what is going wrong there

Basilio Kublik (sourcercito) wrote :

Hi there
You reported this bug a while ago and there hasn't been any activity in it recently. We were wondering is this still an issue for you? Can you try with the development version of Ubuntu, Hardy Heron?

Thanks in advance.

Changed in gdm:
status: New → Incomplete
Sebastien Bacher (seb128) wrote :

no reply closing, a new bug should be sent using apport if that's still an issue on hardy

Changed in gdm:
status: Incomplete → Invalid
To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers