Hi all, this is the 2nd attempt of supporting same fsid mounting on btrfs. V1 is here: https://lore.kernel.org/linux-btrfs/20230504170708.787361-1-gpiccoli@xxxxxxxxxx/ The mechanism used to achieve that in V2 was a mix between the suggestion from JohnS (spoofed fsid) and Qu (a single-dev compat_ro flag) - it is still based in the metadata_uuid feature, leveraging that infrastructure since it prevents lots of corner cases, like sysfs same-fsid crashes. The patches are based on kernel v6.5-rc3 with Anand's metadata_uuid refactor part 2 on top of it [0]; the btrfs-progs patch is based on "v6.3.3". Comments/suggestions and overall feedback is much appreciated - tnx in advance! Cheers, Guilherme [0] https://lore.kernel.org/linux-btrfs/cover.1690792823.git.anand.jain@xxxxxxxxxx/ Guilherme G. Piccoli (3): btrfs-progs: Add the single-dev feature (to both mkfs/tune) btrfs: Introduce the single-dev feature btrfs: Add parameter to force devices behave as single-dev ones btrfs-progs: common/fsfeatures.c | 7 ++++ kernel-shared/ctree.h | 3 +- kernel-shared/uapi/btrfs.h | 7 ++++ mkfs/main.c | 4 ++- tune/main.c | 72 +++++++++++++++++++++++--------------- 5 files changed, 63 insertions(+), 30 deletions(-) kernel: fs/btrfs/disk-io.c | 19 +++++- fs/btrfs/fs.h | 3 +- fs/btrfs/ioctl.c | 18 +++++ fs/btrfs/super.c | 13 ++-- fs/btrfs/super.h | 2 + fs/btrfs/volumes.c | 136 +++++++++++++++++++++++++++++++------ fs/btrfs/volumes.h | 5 +- include/uapi/linux/btrfs.h | 7 ++ 8 files changed, 175 insertions(+), 28 deletions(-) -- 2.41.0