On Mon, Nov 17, 2014 at 08:04:05PM +0100, Goffredo Baroncelli wrote:
> On 2014-11-17 07:59, Brendan Hide wrote:
> > 
> > That leaves two aspects of this issue which I view as two separate bugs:
> > a) Btrfs cannot gracefully handle separate filesystems that have the same 
> > UUID. At all.
> > b) Grub appears to pick the wrong filesystem when presented with two 
> > filesystems with the same UUID.
> > 
> > I feel a) is a btrfs bug.
> > I feel b) is a bug that is more about "ecosystem design" than grub being 
> > silly.
> 
> Regarding a)
> IIRC, btrfs collects the filesystem information by UUID; if two 
> filesystems have the same UUID (like the LVM-snapshot case), the
> last filesystem discovered overwrite the first one.
> 
> The filesystem discovering is done in user-space; so it should be simple
> to skip a filesystem on a LVM-snapshot.
> 
> Regarding b)
> I am bit confused: if I understood correctly, the root filesystem was
> picked from a LVM-snapshot, so grub-probe *correctly* reported that
> the root device is the snapshot.
> The problem was that during the boot filesystem discovering: first
> scanned the *real* device, then the LVM-snapshot; the latter
> overwrote the former so the system booted from the LVM-snapshot.

IMHO if the device UUID search finds multiple devices with the same device
UUID, it should ignore _all_ of them as the identification problem
is unsolvable without further user input.  This is what the 'device='
mount option is for.

> My conclusion is that we should improve the btrfs scan so:
> - in udev rules, a partition that is a LVM snapshot by default 
> should be not scanned by "btrfs dev scan"
> - "btrfs dev scan", during the partition discovery should skip the 
> lvm-snapshot.

That would mean I can't do this:

        1.  lvm snapshot of ext4 filesystem

        2.  btrfs-convert the snapshot

        3.  mount the snapshot, make sure it's OK

        4.  merge LVM snapshot to overwrite original ext4 filesystem

which would be a shame since that's the only way I ever convert ext3/4
filesystems to btrfs (btrfs-convert is a little buggy still).

> BR
> G.Baroncelli
> 
> 
> 
> -- 
> gpg @keyserver.linux.it: Goffredo Baroncelli <kreijackATinwind.it>
> Key fingerprint BBF5 1610 0B64 DAC6 5F7D  17B2 0EDA 9B37 8B82 E0B5
> --
> To unsubscribe from this list: send the line "unsubscribe linux-btrfs" in
> the body of a message to majord...@vger.kernel.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html

Attachment: signature.asc
Description: Digital signature

Reply via email to