Start all fsck instances in parallel, but set their priorities so that thrashing is avoided
Bug #491389 reported by
Johan Kiviniemi
This bug affects 1 person
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
mountall (Ubuntu) |
Fix Released
|
Medium
|
Scott James Remnant (Canonical) |
Bug Description
Binary package hint: mountall
We currently queue fsck instances to avoid thrashing. This means a higher-priority fsck invocation (a bootwait one) may be queued after a lower-priority one (a nobootwait one), unnecessarily slowing down startup.
We should start all fsck instances in parallel, but set their priorities so that thrashing is avoided. This enables us to prioritize the most important fsck instance at any time.
Related branches
lp://staging/~ion/ubuntu/lucid/mountall/parallel-checks
- Scott James Remnant (Canonical): Pending requested
-
Diff: 451 lines (+183/-145)3 files modifieddebian/changelog (+7/-0)
src/ioprio.h (+26/-0)
src/mountall.c (+150/-145)
Changed in mountall (Ubuntu): | |
status: | New → Fix Committed |
importance: | Undecided → Medium |
assignee: | nobody → Scott James Remnant (scott) |
Changed in mountall (Ubuntu): | |
milestone: | none → lucid-alpha-2 |
To post a comment you must log in.
This bug was fixed in the package mountall - 2.0
---------------
mountall (2.0) lucid; urgency=low
[ Scott James Remnant ] mountinfo
* "mount" event changed to "mounting", to make it clear it happens
before the filesystem is mounted. Added "mounted" event which
happens afterwards.
* Dropped the internal hooks, these are now better handled by Upstart
jobs on the "mounted" event.
* Dropped the call to restorecon for tmpfs filesystems, this can also be
handled by an Upstart job supplied by SELinux now.
- mounted-dev.conf replaces /dev hook, uses MAKEDEV to make devices.
- mounted-varrun.conf replaces /var/run hook
- mounted-tmp.conf replaces /tmp hook.
+ Hook will be run for any /tmp mountpoint. LP: #478392.
+ Switching back to using "find" fixes $TMPTIME to be in days again,
rathern than hours. LP: #482602
* Try and make mountpoints, though we only care about failure if the
mountpoint is marked "optional" since otherwise the filesystem might
make the mountpoint or something.
* Rather than hiding the built-in mountpoints inside the code, put them
in a new /lib/init/fstab file; that way users can copy the lines into
/etc/fstab if they wish to override them in some interesting way.
* Now supports multiple filesystem types listed in fstab, the whole
comma-separated list is passed to mount and then /proc/self/
is reparsed to find out what mount actually did.
* /dev will be mounted as a devtmpfs filesystem if supported by the
kernel (which then does not need to run the /dev hook script).
* Filesystem checks may be forced by adding force-fsck to the kernel
command-line.
* Exit gracefully with an error on failed system calls, don't infinite
loop over them. LP: #469985.
* Use plymouth for all user communication, replacing existing usplash and
console code;
* When plymouth is running, rather than exiting on failures, prompt the
user as to whether to fix the problem (if possible), ignore the problem,
ignore the mountpoint or drop to a maintenance shell. LP: #489474.
* If plymouth is not running for whatever reason, the fallback action
is always to start the recovery shell.
* Adjust the set of filesystems that we wait for by default: LP: #484234.
* Wait for all local filesystems, except those marked with the
"nobootwait" option.
* Wait for remote filesystems mounted as, or under, /usr or /var, and
those marked with the "bootwait" option.
* Always try network mount points, since we allow them to fail silently;
SIGUSR1 now simply retries them once more. LP: #470776.
* Don't retry devices repeatedly. LP: #480564.
* Added manual pages for the events emitted by this tool.
[ Johan Kiviniemi ]
* Start all fsck instances in parallel, but set their priorities so that
thrashing is avoided. LP: #491389.
-- Scott James Remnant <email address hidden> Mon, 21 Dec 2009 23:09:23 +0000