mbox series

[v2,0/2] Reconcile Encryption and Casefolding in Ext4

Message ID 20210319073414.1381041-1-drosen@google.com (mailing list archive)
Headers show
Series Reconcile Encryption and Casefolding in Ext4 | expand

Message

Daniel Rosenberg March 19, 2021, 7:34 a.m. UTC
These patches add support for ext4 encryption and casefolding at the same time.
Since the hash for encrypted casefolded directory names cannot be computed
without the key, we need to store the hash on disk. We only do so for encrypted
and casefolded directories to avoid on disk format changes.

e2fsprogs has already been updated with support for casefolding and encryption.

v2 changes:
	When checking for 'fake' entries (which do not include the extra hash bytes)
	-Check for . and .. using names instead of position
	-Check for csum entries via file_type instead of position
	-Assume last entry in directory will be csum for __ext4_check_entry if csum enabled
	
	This means we don't need to pass along lblk all over the place
	
	-Don't use siphash value for find_group_orlov, just use regular hash

Daniel Rosenberg (2):
  ext4: Handle casefolding with encryption
  ext4: Optimize match for casefolded encrypted dirs

 Documentation/filesystems/ext4/directory.rst |  27 +++
 fs/ext4/dir.c                                |  37 +++-
 fs/ext4/ext4.h                               |  73 +++++--
 fs/ext4/hash.c                               |  25 ++-
 fs/ext4/inline.c                             |  25 ++-
 fs/ext4/namei.c                              | 213 ++++++++++++++-----
 fs/ext4/super.c                              |   6 -
 7 files changed, 303 insertions(+), 103 deletions(-)


base-commit: f296bfd5cd04cbb49b8fc9585adc280ab2b58624