Re: btrfs freezing question

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



> Eesh, no you're right, seems like we only set this when we're moving devices
> around, so it must have gotten removed at some point.

Thanks for taking a look, Josef!

> > My series can proceed independent of fixing btrfs but I'm just trying to
> > make people aware in case that somehow wasn't known.
> 
> Thanks for that, we definitely need to get this fixed.  Is the bdev->bd_holder
> part of the new mount api, or is it some other thing that we can do right now
> and then be in a good spot when your new patchset lands?  Let me know and we can
> prioritize that work.  Thanks,

This is independent of converting btrfs to the new mount api.

Christoph has landed a patch series this cycle that sets bdev->bd_holder
to the superblock owning the block device. Before his work
bdev->bd_holder was set to the filesystem type. Roughly, this has
enabled us to go from a block device straight to the owning superblock.

Associated with changing bdev->bd_holder is using a set of holder
operations: fs_holder_ops (see fs/super.c). These can be used to perform
various operations on the holder: in this case on the superblock.

IOW, we don't need to find the owning superblock anymore we just need to
go straight from block device to owning superblock. You can see this
e.g., in block/bdev.c:bdev_mark_dead() = fs/super.c:fs_bdev_mark_dead().

What we need is to switch btrfs to bdev->bd_holder = sb and the usage of
fs/super.c:fs_holder_ops if possible. We did this anyway to avoid
deadlocks, allow dropping of s_umount when opening block devices and
ultimately we can find matching superblocks before opening block devices
which will allow us to restrict writers to block devices in v6.7 (Jan's
work).

We converted all block-based filesystems to use this new mechanism but
David insisted on taking the btrfs portion through btrfs itself. So none
of the btrfs patches in the series linked below have made it upstream
for v6.6 and so you're unfortunately the only fs which still uses the
old mechanism:

Subject: [PATCH 05/17] btrfs: open block devices after superblock
https://lore.kernel.org/linux-block/20230811100828.1897174-6-hch@xxxxxx

What would help is if you would start to take these patches.



[Index of Archives]     [Linux Ext4 Filesystem]     [Union Filesystem]     [Filesystem Testing]     [Ceph Users]     [Ecryptfs]     [NTFS 3]     [AutoFS]     [Kernel Newbies]     [Share Photos]     [Security]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux Cachefs]     [Reiser Filesystem]     [Linux RAID]     [NTFS 3]     [Samba]     [Device Mapper]     [CEPH Development]

  Powered by Linux