Open tasleson opened 3 months ago
If we update the udev db, # udevadm control --reload-rules && udevadm trigger
we can mount as expected
./bcachefs mount -v /dev/mapper/mpathc /mnt/bcachefs/
DEBUG - bcachefs::commands::mount: Walking udev db!
DEBUG - bcachefs::commands::mount: enumerating devices with UUID 90dac8ea-7960-4cb6-b92e-3f86b7eed350
INFO - bcachefs::commands::mount: mounting with params: device: /dev/dm-10:/dev/dm-17:/dev/dm-23, target: /mnt/bcachefs/, options:
DEBUG - bcachefs::commands::mount: parsing mount options:
INFO - bcachefs::commands::mount: mounting bcachefs filesystem, /mnt/bcachefs/
INFO - bcachefs::commands::mount: mounting filesystem
INFO - bcachefs::commands::mount: Successfully mounted
Note: using bcachefs-tools 3ac510f6a41feb1b695381fa30869d557c00b822 with fedora 39 6.8.9-200 kernel
If you format a 2 device FS, eg.
format out shows FS UUID =
90dac8ea-7960-4cb6-b92e-3f86b7eed350
we check using blkid -p and they match our expectations
mount it:
add another device to it
checks it's blkid info:
and find that its FS UUID is different!
The udev db for this block device is also showing
ID_FS_UUID=e165c540-ea4a-45d6-8d7d-c412d0202840
If we un-mount the bcachefs FS and check FS UUID on disk we find
that the FS UUID now matches the original formatted FS.
However, the udev db still shows
ID_FS_UUID=e165c540-ea4a-45d6-8d7d-c412d0202840
So if we now try to mount the FS using 1 of the device nodes or the FS UUID we fail to find all of the devices!
dmesg shows:
We can get it to mount if we supply all the block devices, eg.
./bcachefs mount -v /dev/mapper/mpathc:/dev/mapper/mpathb:/dev/mapper/mpathd /mnt/bcachefs/
So the question is, why does a newly added device have a different FS UUID when added?
I'm not sure how to fix this, so that when the super block gets written out is has the correct FS UUID during
device add
.