On Sun, Jul 16, 2023 at 11:52:42PM -0400, Sweet Tea Dorminy wrote: > Since extent encryption requires inline encryption, even though we > expect to use the inlinecrypt software fallback most of the time, we > need to enumerate all the devices in use by btrfs. > > I'm not sure this is the correct list of active devices and it isn't > tested with any multi-device test yet. > > Signed-off-by: Sweet Tea Dorminy <sweettea-kernel@xxxxxxxxxx> > --- > fs/btrfs/fscrypt.c | 39 +++++++++++++++++++++++++++++++++++++++ > 1 file changed, 39 insertions(+) > > diff --git a/fs/btrfs/fscrypt.c b/fs/btrfs/fscrypt.c > index e03157c367a2..6875108f4363 100644 > --- a/fs/btrfs/fscrypt.c > +++ b/fs/btrfs/fscrypt.c > @@ -11,7 +11,9 @@ > #include "ioctl.h" > #include "messages.h" > #include "root-tree.h" > +#include "super.h" > #include "transaction.h" > +#include "volumes.h" > #include "xattr.h" > > /* > @@ -164,9 +166,46 @@ static bool btrfs_fscrypt_empty_dir(struct inode *inode) > return inode->i_size == BTRFS_EMPTY_DIR_SIZE; > } > > +static struct block_device **btrfs_fscrypt_get_devices(struct super_block *sb, > + unsigned int *num_devs) > +{ > + struct btrfs_fs_info *fs_info = btrfs_sb(sb); > + struct btrfs_fs_devices *fs_devices = fs_info->fs_devices; > + int nr_devices = fs_devices->open_devices; > + Extraneous newline. Thanks, Josef
![]() |