On Mon, Apr 22, 2019 at 09:42:01PM -0400, Theodore Ts'o wrote: > On Mon, Apr 22, 2019 at 03:08:09PM -0700, Elliott Mitchell wrote: > > Package: e2fsprogs > > Version: 1.43.4-2 > > Severity: minor > > > > If being run on a system which uses MMP and they weren't unmounted > > cleanly, e2fsck will clear the MMP flags in order individually heavily > > slowing the check process. > > > > At a minimum when `e2fsck -a` is run, if it needs to clear one MMP flag > > it should check for MMP flags on other filesystems and attempt to clear > > them too. > > > > Needing two MMP waits (one for `fsck /` and one for `fsck -a`) is > > acceptable, 3+ is not. > > What's the use case where you are using MMP on multiple file systems? > In most of the configurations that I've seen, each server will have > its own root file system, and the only thing which gets shared is a > single data partition. > > In a boot sequence, e2fsck gets called separate for each partition. For > example: > > % fsck -A -V -N > fsck from util-linux 2.33.1 > Checking all file systems. > [/sbin/fsck.ext4 (1) -- /] fsck.ext4 /dev/mapper/lambda-root > [/sbin/fsck.vfat (1) -- /boot/efi] fsck.vfat /dev/nvme0n1p1 > [/sbin/fsck.ext4 (1) -- /boot] fsck.ext4 /dev/nvme0n1p4
Ah, perhaps I'm hearkening to an earlier era where e2fsck was taking care of parallel-izing operations itself and that is no longer the case. > So e2fsck has no idea whether multiple file systems are being checked, > or only one. E2fsck is also not parsing /etc/fstab --- that's the job > of the fsck driver program, or if you are using systemd, the systemd > generator. > > So at the risk of sounding like Steve Jobs --- if you are trying to > use multiple MMP file systems, you're probably holding it wrong. :-) > > What is your use case; what are you trying to achieve, and how are > your systems setup? How are the disks connected to multiple servers? Could well be I'm doing a really whacky setup. This is several VMs on a hypervisor. Most filesystems aren't shared, I'm mostly using MMP for protection against my doing something stupid due to typing a command with the wrong device. The VMs have separate /, and /var. Their storage isn't being presented to them as a single disk, but instead being divided into block devices for filesystems in the privileged area. The privileged area understands ext4 and I'm mostly worried about mistakenly trying to mount a filesystem in the privileged area while a VM is active on it. There is no fallover, mostly protection against fumble-fingers. %-) -- (\___(\___(\______ --=> 8-) EHM <=-- ______/)___/)___/) \BS ( | ehem+sig...@m5p.com PGP 87145445 | ) / \_CS\ | _____ -O #include <stddisclaimer.h> O- _____ | / _/ 8A19\___\_|_/58D2 7E3D DDF4 7BA6 <-PGP-> 41D1 B375 37D0 8714\_|_/___/5445