mountall needs to flush plymouth message queue before emitting upstart events
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
mountall (Ubuntu) |
Fix Released
|
High
|
Scott James Remnant (Canonical) | ||
Lucid |
Fix Released
|
High
|
Scott James Remnant (Canonical) | ||
plymouth (Ubuntu) |
Fix Released
|
High
|
Steve Langasek | ||
Lucid |
Fix Released
|
High
|
Steve Langasek |
Bug Description
Binary package hint: mountall
On boots when fsck runs, mountall appears to hang. The mountall process consumes 100% CPU time, and the following error message loops on the console:
"mountall: Plymouth command failed"
Although this error message continues to loop on the main console, login is still possible on other consoles, or through kdm.
mountall needs to flush the plymouth message queue before each upstart event that it emits; otherwise, plymouth may be killed in response to one of these upstart events (in practice: filesystem -> gdm or rc-sysinit -> plymouth-stop), leaving as the last message on the splash screen whatever mountall managed to get out before plymouthd exited. This is particularly disconcerting when gdm or kdm stops plymouth with --retain-splash.
To reproduce:
1) Force a filesystem check:
# touch /forcefsck
2) Reboot
ProblemType: Bug
DistroRelease: Ubuntu 10.04
Package: mountall 2.11
ProcVersionSign
Uname: Linux 2.6.32-19-generic i686
Architecture: i386
Date: Sat Apr 10 14:15:12 2010
EcryptfsInUse: Yes
ExecutablePath: /sbin/mountall
ProcEnviron: PATH=(custom, no user)
SourcePackage: mountall
summary: |
- mountall hangs when fsck is run + mountall needs to flush plymouth message queue before emitting upstart + events |
description: | updated |
Changed in mountall (Ubuntu): | |
status: | New → Triaged |
importance: | Undecided → High |
assignee: | nobody → Scott James Remnant (scott) |
milestone: | none → ubuntu-10.04 |
Changed in mountall (Ubuntu Lucid): | |
status: | Triaged → Fix Committed |
tags: | added: glucid |
Changed in plymouth (Ubuntu Lucid): | |
status: | New → In Progress |
assignee: | nobody → Steve Langasek (vorlon) |
milestone: | none → ubuntu-10.04 |
importance: | Undecided → High |
Changed in plymouth (Ubuntu Lucid): | |
status: | In Progress → Fix Committed |
Changed in plymouth (Ubuntu Lucid): | |
status: | Fix Released → Incomplete |
I'm seeing a variation on this, with significant similarities - I'll try the method above.
In my case, Plymouth comes up, and tells me that it will check all the disks, but then halts at 90% or 8% (depending on whether it checks one or both of the disks). It provides the option of pressing C to cancel the check, but does not respond if C is pressed (shift + c or just c).
If I press escape, I get several screens full of "udevd[xxx]: SYSFS{}= will be removed in a future udev version, please use ATTR{}= to match the event device, or ATTRS= to match a parent device, in /etc/udev/ rules.d/ 65-libmatp. rules:89" or variations upon that theme.
Often I also get a "ureadahead-other main process terminated with status 4" message or two
At end, it also drops several instances of the aforementioned "mountall: Plymouth command failed".
At which point, the computer appears to hang, and no further progress is made towards booting.
I tested other kernel versions, and I get roughly the same series of events.