[syslinux] BTRFS default subvolume identification and use

Jordan Beaver jordan at beaveris.me
Mon Dec 8 15:06:05 PST 2014


Hello All,

I've recently encountered an issue with `extlinux --install
/boot/syslinux` where a subvolume on btrfs which is set to
`set-default` is not identified as the default subvolume.

In my testing I pulled both the prebuilt binary from kernel.org which
failed to identify that I had set a non 0 value via `btrfs subvolume
set-default <id> <path>`. In extlinux/main.c there appears to be two
different unique attempts to grab information relating to default
subvolume. If the first one succeeds, `find_device_btrfs(path)`, the
second is not ran, `find_device`, which in turn would call
`get_default_subvol`.

I found by commenting out line 1293 of extlinux/main.c that since it
skips `find_device_btrfs(path)` the subvolume is set properly and I can
continue to boot from subvolume and rely on set-default to work as
expected when changing subvolumes.

-Beaver


More information about the Syslinux mailing list