Re: [f2fs-dev] [PATCH AUTOSEL 5.10 10/31] f2fs: Handle casefolding with Encryption

From: Sasha Levin
Date: Mon Jan 04 2021 - 09:21:28 EST


On Wed, Dec 30, 2020 at 10:01:56AM -0800, Eric Biggers wrote:
On Wed, Dec 30, 2020 at 08:02:52AM -0500, Sasha Levin wrote:
From: Daniel Rosenberg <drosen@xxxxxxxxxx>

[ Upstream commit 7ad08a58bf67594057362e45cbddd3e27e53e557 ]

Expand f2fs's casefolding support to include encrypted directories. To
index casefolded+encrypted directories, we use the SipHash of the
casefolded name, keyed by a key derived from the directory's fscrypt
master key. This ensures that the dirhash doesn't leak information
about the plaintext filenames.

Encryption keys are unavailable during roll-forward recovery, so we
can't compute the dirhash when recovering a new dentry in an encrypted +
casefolded directory. To avoid having to force a checkpoint when a new
file is fsync'ed, store the dirhash on-disk appended to i_name.

This patch incorporates work by Eric Biggers <ebiggers@xxxxxxxxxx>
and Jaegeuk Kim <jaegeuk@xxxxxxxxxx>.

Co-developed-by: Eric Biggers <ebiggers@xxxxxxxxxx>
Signed-off-by: Eric Biggers <ebiggers@xxxxxxxxxx>
Signed-off-by: Daniel Rosenberg <drosen@xxxxxxxxxx>
Reviewed-by: Eric Biggers <ebiggers@xxxxxxxxxx>
Signed-off-by: Jaegeuk Kim <jaegeuk@xxxxxxxxxx>
Signed-off-by: Sasha Levin <sashal@xxxxxxxxxx>

Please don't backport this to the LTS kernels. This is a new feature, not a
fix, and you missed prerequisite patches...

Sure, I'l drop it. Thanks!

--
Thanks,
Sasha