definition of "filesystem" signal is uselessly overbroad (don't include /srv)

Bug #448267 reported by Steve Langasek
10
This bug affects 2 people
Affects Status Importance Assigned to Milestone
mountall (Ubuntu)
Fix Released
High
Scott James Remnant (Canonical)
Karmic
Fix Released
High
Scott James Remnant (Canonical)

Bug Description

Binary package hint: mountall

The "filesystem" signal which blocks the start of rc-sysinit processing and the gdm service is way overbroad in its definition. Yes, /home and /srv are directories that are defined in the FHS, but there's no reason that we should be blocking on these before starting sysvinit processing, because services are not supposed to be relying on anything in these directories for their overall operation. Users *may* have configured services to point at /srv, but they may also have configured services to point at any number of other non-FHS directories not covered by this signal.

In the specific case of /srv, blocking on it before starting gdm/rc-sysinit causes a dependency loop if /srv is a remote filesystem and the network interface is, e.g., a wireless interface managed via network-manager with user-session-specific WEP key information. Or if the user is roaming and can't reach the network at all but would still like to be able to log in to their system. This is a regression vs. previous behavior, where unavailable remote /srv filesystems would not block the boot, and it's a bug independent of any problems with subdirectories of /home being blockers when they shouldn't (i.e., bug #447649).

ProblemType: Bug
Architecture: amd64
Date: Sat Oct 10 13:34:04 2009
DistroRelease: Ubuntu 9.10
Package: mountall 0.2.1
ProcEnviron:
 PATH=(custom, user)
 LANG=en_US.UTF-8
 SHELL=/bin/bash
ProcVersionSignature: Ubuntu 2.6.31-13.42-generic
SourcePackage: mountall
Uname: Linux 2.6.31-13-generic x86_64

Revision history for this message
Steve Langasek (vorlon) wrote :
Changed in mountall (Ubuntu):
importance: Undecided → High
milestone: none → ubuntu-9.10
status: New → Triaged
tags: added: regression-potential ubuntu-boot
Steve Langasek (vorlon)
summary: - definition of "filesystem" signal is uselessly overbroad
+ definition of "filesystem" signal is uselessly overbroad (don't include
+ /sys)
summary: definition of "filesystem" signal is uselessly overbroad (don't include
- /sys)
+ /srv)
Revision history for this message
Scott James Remnant (Canonical) (canonical-scott) wrote :

Agree

Changed in mountall (Ubuntu Karmic):
assignee: nobody → Scott James Remnant (scott)
Changed in mountall (Ubuntu Karmic):
status: Triaged → Fix Committed
Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package mountall - 0.2.2

---------------
mountall (0.2.2) karmic; urgency=low

  [ Steve Langasek ]
  * Don't emit the local-filesystem signal until after virtual filesystems
    are also done mounting. LP: #448981.

  [ Robert Gerlach ]
  * Fix segfault when root filesystem missing from fstab, or listed
    as /dev/root. LP: #448323.

  [ Johan Kiviniemi ]
  * Don’t queue filesystem check when either device or type is "none".

  [ Scott James Remnant ]
  * Removed /srv from the list of "essential" mountpoints. LP: #448267.
  * Allow overriding of the above list by using the "bootwait" and
    "nobootwait" fstab options, e.g.

    LABEL=foo /home ext4 nobootwait 0 0

  * Mount /proc before attempting to parse /proc/filesystems. LP: #447947.
  * Further improvements to event tagging of filesystems. A virtual bootwait
    filesystem underneath a local or remote filesystem inherits that tag,
    a local bootwait filesystem underneath a remote filesystem inherits that
    tag, remote filesystems do not inherit them. LP: #447654.

  * Replace previous hardcoded "arch specific" flag for /spu with an
    "optional" fstab mount option.
  * Made binfmt_misc,fusectl, debugfs, securityfs and /lib/init/rw optional
    as well.
  * Check whether the mountpoint of optional fstab entries exists before
    trying to mount, and skip over that if it doesn't. LP: #447525.

  * Keep /proc/self/mountinfo open, if it changes while we're running,
    update the knowledge of the mount table and what's mounted. That
    way if something else mounts it while mountall running, you'll still
    get events and mountall will still exit.
  * Try mounts again if another network device comes up while we were
    waiting.

 -- Scott James Remnant <email address hidden> Tue, 13 Oct 2009 02:17:47 +0100

Changed in mountall (Ubuntu Karmic):
status: Fix Committed → 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.