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@google.com
[ 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@google.com and Jaegeuk Kim jaegeuk@kernel.org.
Co-developed-by: Eric Biggers ebiggers@google.com Signed-off-by: Eric Biggers ebiggers@google.com Signed-off-by: Daniel Rosenberg drosen@google.com Reviewed-by: Eric Biggers ebiggers@google.com Signed-off-by: Jaegeuk Kim jaegeuk@kernel.org Signed-off-by: Sasha Levin sashal@kernel.org
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!