v1 encryption policies are deprecated in favor of v2, and some new features (e.g. encryption+casefolding) are only being added for v2. As a result, the "test_dummy_encryption" mount option (which is used for encryption I/O testing with xfstests) needs to support v2 policies. Therefore, this patchset adds support for specifying "test_dummy_encryption=v2" (or "test_dummy_encryption=v1"). To make this possible, it reworks the way the test_dummy_encryption mount option is handled to make it more flexible than a flag, and to automatically add the test dummy key to the filesystem's keyring. Patch 4 additionally changes the default to "v2". This patchset applies to v5.7-rc4. Eric Biggers (4): linux/parser.h: add include guards fscrypt: add fscrypt_add_test_dummy_key() fscrypt: support test_dummy_encryption=v2 fscrypt: make test_dummy_encryption use v2 by default Documentation/filesystems/f2fs.rst | 6 +- fs/crypto/fscrypt_private.h | 3 + fs/crypto/keyring.c | 117 +++++++++++++++++---------- fs/crypto/keysetup.c | 15 ++-- fs/crypto/policy.c | 125 +++++++++++++++++++++++++++++ fs/ext4/ext4.h | 7 +- fs/ext4/super.c | 68 ++++++++++++---- fs/f2fs/f2fs.h | 4 +- fs/f2fs/super.c | 85 ++++++++++++++------ include/linux/fscrypt.h | 52 ++++++++++-- include/linux/parser.h | 5 +- 11 files changed, 383 insertions(+), 104 deletions(-) -- 2.26.2