fsck on boot triggers failsafe x 100% of the time

Bug #496796 reported by Robert Hooker
40
This bug affects 6 people
Affects Status Importance Assigned to Milestone
gdm (Ubuntu)
Fix Released
High
Scott James Remnant (Canonical)
Lucid
Fix Released
High
Scott James Remnant (Canonical)

Bug Description

Binary package hint: gdm

When fsck runs on boot it triggers a failsafe x session every time on all of my machines running lucid. Coupled with the fact failsafeX uses vesa which does not work when i915 is loaded with KMS as well as the fact fsck's happen without any visual feedback when plymouth is installed it is a pretty nasty bug when it happens. I have filed a seperate bug regarding possibly adding a check in /etc/gdm/failsafeXStart to use fbdev instead of vesa already. (lp: #496773)

Steps to reproduce:

1) Set the mount count flag on a partition higher than the maximum mount count line dumpe2fs lists.
(for example: sudo tune2fs -C 200 /dev/sda1)
2) Reboot

Changing /etc/init/gdm.conf so it checks "and stopped udevtrigger)" instead of "or stopped udevtrigger))" fixes it for me.

Not working default /etc/init/gdm.conf, failsafeX after fsck:

start on (filesystem
          and (graphics-device-added fb0 PRIMARY_DEVICE_FOR_DISPLAY=1
               or drm-device-added card0 PRIMARY_DEVICE_FOR_DISPLAY=1
               or stopped udevtrigger))
stop on runlevel [016]

Working gdm.conf, no failsafe X after fsck:

start on (filesystem
          and (graphics-device-added fb0 PRIMARY_DEVICE_FOR_DISPLAY=1
               or drm-device-added card0 PRIMARY_DEVICE_FOR_DISPLAY=1)
          and stopped udevtrigger)
stop on runlevel [016]

ProblemType: Bug
Architecture: i386
Date: Mon Dec 14 19:55:01 2009
DistroRelease: Ubuntu 10.04
Package: gdm 2.29.1-0ubuntu7
ProcEnviron:
 PATH=(custom, user)
 LANG=en_US.UTF-8
 SHELL=/bin/bash
ProcVersionSignature: Ubuntu 2.6.32-8.12-generic
SourcePackage: gdm
Tags: ubuntu-unr lucid
Uname: Linux 2.6.32-8-generic i686

Revision history for this message
Robert Hooker (sarvatt) wrote :
Changed in gdm (Ubuntu):
assignee: nobody → Canonical Desktop Team (canonical-desktop-team)
assignee: Canonical Desktop Team (canonical-desktop-team) → nobody
Martin Pitt (pitti)
Changed in gdm (Ubuntu):
assignee: nobody → Canonical Desktop Team (canonical-desktop-team)
Changed in gdm (Ubuntu Lucid):
importance: Undecided → High
Revision history for this message
Martin Pitt (pitti) wrote :

Bryce, can you take a look at this, please? Will certainly require input from Scott, too.

Changed in gdm (Ubuntu Lucid):
status: New → Triaged
assignee: Canonical Desktop Team (canonical-desktop-team) → Bryce Harrington (bryceharrington)
Robert Hooker (sarvatt)
description: updated
Revision history for this message
Bryce Harrington (bryce) wrote :

pitti, I already had looked at this with sarvatt for a while yesterday. While it results in the user ending up in failsafeX, it's not a bug in failsafeX but rather in whatever is causing it to fall into failsafeX. I gathered from the logs sarvatt had collected (which don't appear to be attached to this bug report - sarvatt you should upload them here) that gdm was trying to launch X on tty7 which was being held open by whatever was running the fsck so gdm gave up. failsafeX is less picky about what vt it fires up on which is why it was able to come up successfully.

My guess is that some sort of magic in the gdm upstart script (or even prior to this) is required in order to serialize startup when fsck is proceeding. For instance, gdm maybe should wait and retry if tty7 is temporarily unavailable before trying to start X on it, or else allow gdm to fire up X on a different tty if you really do actually want X to come up while fsck is proceeding in the background.

Changed in gdm (Ubuntu Lucid):
assignee: Bryce Harrington (bryceharrington) → nobody
Revision history for this message
Robert Hooker (sarvatt) wrote :
Revision history for this message
Robert Hooker (sarvatt) wrote :
Revision history for this message
Pavol Klačanský (pavolzetor-deactivatedaccount) wrote :

I must run fsck from archlinux, otherwise I cannot boot to ubuntu, It hangs at boot

Revision history for this message
Pavol Klačanský (pavolzetor-deactivatedaccount) wrote :

OK, I can also fix it from recovery

Revision history for this message
Martin Pitt (pitti) wrote :

Scott said that he's on this.

Changed in gdm (Ubuntu Lucid):
assignee: nobody → Scott James Remnant (scott)
Revision history for this message
Jordan Bradley (jordan-w-bradley) wrote :

I think I may be experiencing the same problem.

Revision history for this message
Jordan Bradley (jordan-w-bradley) wrote :

As of the last update (a few hours ago) I am unable to boot 100% of the time. This time gdm doesn't die. It gets terminated.

Revision history for this message
Jordan Bradley (jordan-w-bradley) wrote :

For some reason libdbusmenu-glib0 was being held back. When I tried to force its upgrade through synaptic it wanted to remove ubuntu-desktop and some indicator packages. In a terminal I ran "sudo apt-get -f install libdbusmenus-glib0", it upgraded and upgraded the packages it wanted to remove (say what?). 20 Packages were made available for upgrading, two of which were gdm and xorg. After upgrading those I can now boot into gnome properly.

Robert Hooker (sarvatt)
Changed in gdm (Ubuntu Lucid):
status: Triaged → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.