Any update? Should /I/ create a second bug report and attach it to util-linux? (or are you going to do the honors?) Thought I saw the current BTS can have a report shared amoung multiple packages...
The algorithm that comes to mind for this problem: Pass 0: (/etc/init.d/checkroot.sh) Check /; if / is to be mounted read-only, inhibit precautionary checks (this would require an extended option for the lower-level fsck implementations); otherwise allow precautionary checks. Pass 1a: (/etc/init.d/checkfs.sh) For each spindle: Check all filesystems, but inhibiting precautionary checks. Pass 1b: (/etc/init.d/checkfs.sh) For each spindle that had all filesystems clean (lower-level fsck exited with return code 0), recheck filesystems to be mounted read-write allowing precautionary checks until one precautionary check is done or all filesystems have been checked. Pass 2: (delayed task, queued by init scripts, but post-boot) Scan all read-only filesystems, allowing precautionary checks in background. Two concerns. First, what is the significance of return codes >=4 from a low-level fsck? If these merely mean filesystem was altered in a way that invalidates kernel structures, isn't this non-problematic in the case of a filesystem that is mounted read-only? (a later remount rw would flush those, right?) Second, in what is listed above as "Pass 1b", the low-level fsck needs to make the decision of which filesystem to check if multiple are candidates for precautionary checking and it must scan all filesystems on the spindle. If a system is restarted very infrequently and fsck always goes for the first candidate (perhaps the one with lowest pass number), the situation could arise that earlier filesystems might *always* consume the precautionary check, and later filesystems might starve. Alas, only the low-level fscks will have information on the last time a filesystem was checked (I would use greatest time since last check divided by check interval, followed by amount over maximum mount count at first thought). -- (\___(\___(\______ --=> 8-) EHM <=-- ______/)___/)___/) \BS ( | e...@gremlin.m5p.com PGP F6B23DE0 | ) / \_CS\ | _____ -O #include <stddisclaimer.h> O- _____ | / _/ 2477\___\_|_/DC21 03A0 5D61 985B <-PGP-> F2BE 6526 ABD2 F6B2\_|_/___/3DE0 -- To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org