I have a .xsession file which gets run when I log into gdm. I have gdm-2.2.2-2 installed. If I try to log in immediately a after reboot, my login hangs. I suspect that it's hanging in this code, but I don't know why it would: xmodmap - <<EOF clear mod4 add mod1 = Meta_L EOF I suspect this because the code that runs right after this code doesn't get executed, but the code that runs before it does. When the hang happens, I'm stuck staring at an X server screen with a mouse cursor that moves but no windows, and this shows up in my log: Jun 3 05:14:38 jik gdm[1236]: deal_with_x_crashes: Running the XKeepsCrashing script Jun 3 05:14:39 jik gdm[1236]: Failed to start X server several times in a short time period; disabling display :0 If I wait for a couple of minutes after gdm starts, it doesn't have this problem. If, after the hang, I shut down gdm (with "telinit 3"), kill the X server, and then restart gdm and X ("telinit 5"), I can log in immediately. This is why I suspect that the problem has something to do with rebooting (as opposed to merely having to do with right after gdm starts up).
This may be fixed in latest gdm, which we'll package shortly, let me know if it works.
This is still broken in gdm-2.2.2-4.
Just as an addition to this.....since Rawhide of 5/24 after every reboot KDM core dumps first time you try to login. It than restarts automatically and subsequent logins are all fine. Confirmed this many times. It could be that there is a stale lock file or something left behind. In other words the problem may not be with GNOME but something else in the system.
Additional note: the core dump of kdm after reboot never happens if one logs in as root but happens when login in as ordinary user.
A couple more notes: * Today when I logged into gdm right after a reboot, it hung after I hit enter after typing my password, i.e., it didn't even get to the blank grey screen I described above. Then, when I rebooted and did it again, it hung at the blank screen. So the failure mode isn't always exactly the same. * When it was hung today at the blank screen, I killed the X server, but gdm didn't notice. I ran strace on it, and I saw a couple of gettimeofday calls followed by a call to poll(), which hung. So it would seem that the culprit here is almost certainly gdm rather than the X server.
Does pam-0.75-5 (coming soon to Raw Hide) fix this issue? On my workstation I traced the bug jik sees down to a bug in pam_console that would corrupt the heap and cause the gdm child process to crash.
Yes, this problem appears to have gone away when I upgrade to all the current Rawhide packages. I'm changing the component to "pam" and marking it resolved in rawhide.