UPSTREAM: f2fs: Advertise encrypted casefolding in sysfs
Older kernels don't support encryption with casefolding. This adds
the sysfs entry encrypted_casefold to show support for those combined
features. Support for this feature was originally added by
commit 7ad08a58bf67 ("f2fs: Handle casefolding with Encryption")
Bug: 254441685
Fixes: 7ad08a58bf67 ("f2fs: Handle casefolding with Encryption")
Cc: stable@vger.kernel.org # v5.11+
Signed-off-by: Daniel Rosenberg <drosen@google.com>
Reviewed-by: Eric Biggers <ebiggers@google.com>
Reviewed-by: Chao Yu <yuchao0@huawei.com>
Signed-off-by: Jaegeuk Kim <jaegeuk@kernel.org>
(cherry picked from commit 4c039d5452691fe80260e4c3dd7b629a095bd0a7)
Signed-off-by: Lee Jones <joneslee@google.com>
Change-Id: I0f2b85176ce19871f058c35ad26f181bf40f0567
This commit is contained in:
committed by
Lee Jones
parent
18a579e7fa
commit
9eabb09cc2
@@ -458,6 +458,7 @@ enum feat_id {
|
|||||||
FEAT_CASEFOLD,
|
FEAT_CASEFOLD,
|
||||||
FEAT_COMPRESSION,
|
FEAT_COMPRESSION,
|
||||||
FEAT_TEST_DUMMY_ENCRYPTION_V2,
|
FEAT_TEST_DUMMY_ENCRYPTION_V2,
|
||||||
|
FEAT_ENCRYPTED_CASEFOLD,
|
||||||
};
|
};
|
||||||
|
|
||||||
static ssize_t f2fs_feature_show(struct f2fs_attr *a,
|
static ssize_t f2fs_feature_show(struct f2fs_attr *a,
|
||||||
@@ -479,6 +480,7 @@ static ssize_t f2fs_feature_show(struct f2fs_attr *a,
|
|||||||
case FEAT_CASEFOLD:
|
case FEAT_CASEFOLD:
|
||||||
case FEAT_COMPRESSION:
|
case FEAT_COMPRESSION:
|
||||||
case FEAT_TEST_DUMMY_ENCRYPTION_V2:
|
case FEAT_TEST_DUMMY_ENCRYPTION_V2:
|
||||||
|
case FEAT_ENCRYPTED_CASEFOLD:
|
||||||
return sprintf(buf, "supported\n");
|
return sprintf(buf, "supported\n");
|
||||||
}
|
}
|
||||||
return 0;
|
return 0;
|
||||||
@@ -580,7 +582,10 @@ F2FS_GENERAL_RO_ATTR(avg_vblocks);
|
|||||||
#ifdef CONFIG_FS_ENCRYPTION
|
#ifdef CONFIG_FS_ENCRYPTION
|
||||||
F2FS_FEATURE_RO_ATTR(encryption, FEAT_CRYPTO);
|
F2FS_FEATURE_RO_ATTR(encryption, FEAT_CRYPTO);
|
||||||
F2FS_FEATURE_RO_ATTR(test_dummy_encryption_v2, FEAT_TEST_DUMMY_ENCRYPTION_V2);
|
F2FS_FEATURE_RO_ATTR(test_dummy_encryption_v2, FEAT_TEST_DUMMY_ENCRYPTION_V2);
|
||||||
|
#ifdef CONFIG_UNICODE
|
||||||
|
F2FS_FEATURE_RO_ATTR(encrypted_casefold, FEAT_ENCRYPTED_CASEFOLD);
|
||||||
#endif
|
#endif
|
||||||
|
#endif /* CONFIG_FS_ENCRYPTION */
|
||||||
#ifdef CONFIG_BLK_DEV_ZONED
|
#ifdef CONFIG_BLK_DEV_ZONED
|
||||||
F2FS_FEATURE_RO_ATTR(block_zoned, FEAT_BLKZONED);
|
F2FS_FEATURE_RO_ATTR(block_zoned, FEAT_BLKZONED);
|
||||||
#endif
|
#endif
|
||||||
@@ -667,7 +672,10 @@ static struct attribute *f2fs_feat_attrs[] = {
|
|||||||
#ifdef CONFIG_FS_ENCRYPTION
|
#ifdef CONFIG_FS_ENCRYPTION
|
||||||
ATTR_LIST(encryption),
|
ATTR_LIST(encryption),
|
||||||
ATTR_LIST(test_dummy_encryption_v2),
|
ATTR_LIST(test_dummy_encryption_v2),
|
||||||
|
#ifdef CONFIG_UNICODE
|
||||||
|
ATTR_LIST(encrypted_casefold),
|
||||||
#endif
|
#endif
|
||||||
|
#endif /* CONFIG_FS_ENCRYPTION */
|
||||||
#ifdef CONFIG_BLK_DEV_ZONED
|
#ifdef CONFIG_BLK_DEV_ZONED
|
||||||
ATTR_LIST(block_zoned),
|
ATTR_LIST(block_zoned),
|
||||||
#endif
|
#endif
|
||||||
|
|||||||
Reference in New Issue
Block a user