Re: [btrfs] commit bc27d6f0aa0e4de184b617aceeaf25818cc646de breaks update-grub

From: Alex Romosan
Date: Sun Jan 21 2024 - 20:46:48 EST


On Mon, Jan 22, 2024 at 2:35 AM Anand Jain <anand.jain@xxxxxxxxxx> wrote:
>
>
>
> On 22/01/2024 08:07, Alex Romosan wrote:
> > update-grub still doesn't work 6.8-rc1
> >
> > so i did:
> >
> > # cat /proc/self/mountinfo | grep btrfs
> > 21 1 0:19 / / rw,relatime shared:1 - btrfs /dev/root
> > rw,ssd,discard=async,space_cache,subvolid=5,subvol=/
> >
>
> The latest Btrfs kernel expect one MAJ:MIN for a block device,
> but multiple nodes here point to the same root device:
>
> /dev/root MAJ1:MIN1 \___ root-device
> /dev/sda1 MAJ2:MIN2 /
>
> To fix, I'm exploring communication through block-device nodes
> with a temporary signature tag on the superblock for identification.
> Community feedback is pending, and potentially synchronization issues
> maybe a concer.
>
> > the difference from your test case is that it doesn't reference
> > the disk device but /dev/root which on my system doesn't exist. could this
> > be the problem?
> >
>
> How are you reproducing this? I tried with Oracle Linux (OL), Fedora,
> and Arch Linux, but they didn't show /dev/root as the root device.

i'm running debian on a lenovo x1. this is my /etc/fstab

# <file system> <mount point> <type> <options> <dump> <pass>
# / was on /dev/nvme0n1p3 during installation
#UUID=695aa7ac-862a-4de3-ae59-c96f784600a0 / btrfs
defaults 0 0
PARTUUID=43094f42-5f54-4456-9d14-3c41e92326e1 / btrfs
defaults 0 0
# /boot/efi was on /dev/nvme0n1p1 during installation
#UUID=A4A3-9199 /boot/efi vfat umask=0077 0 1
PARTUUID=05e00aed-a6ad-4cdc-9a40-4b775dbf87a9 /boot/efi vfat
umask=0077 0 1
# swap was on /dev/nvme0n1p2 during installation
#UUID=6b9a36ed-14d8-458d-8575-c8d29dc80bdf none swap sw
0 0
PARTUUID=db40aeb2-88b4-46eb-970f-58a410bf272e none swap
sw 0 0

i'm running my own compiled kernel without initrd. the disk with the btrfs
filesystem is the only disk on that laptop. i'm just booting the kernel
(everything works fine there) but when i try to run update-grub i get:

# update-grub
/usr/sbin/grub-probe: error: cannot find a device for / (is /dev mounted?).

--alex--