]> git.ipfire.org Git - thirdparty/kernel/linux.git/commit
ext4: disable fast-commit of encrypted dir operations
authorEric Biggers <ebiggers@google.com>
Sun, 6 Nov 2022 22:48:35 +0000 (14:48 -0800)
committerTheodore Ts'o <tytso@mit.edu>
Fri, 9 Dec 2022 02:49:24 +0000 (21:49 -0500)
commit0fbcb5251fc81b58969b272c4fb7374a7b922e3e
treed6ffe34937a6405d44b1890cde6478ec0344e278
parenta71248b1accb2b42e4980afef4fa4a27fa0e36f5
ext4: disable fast-commit of encrypted dir operations

fast-commit of create, link, and unlink operations in encrypted
directories is completely broken because the unencrypted filenames are
being written to the fast-commit journal instead of the encrypted
filenames.  These operations can't be replayed, as encryption keys
aren't present at journal replay time.  It is also an information leak.

Until if/when we can get this working properly, make encrypted directory
operations ineligible for fast-commit.

Note that fast-commit operations on encrypted regular files continue to
be allowed, as they seem to work.

Fixes: aa75f4d3daae ("ext4: main fast-commit commit path")
Cc: <stable@vger.kernel.org> # v5.10+
Signed-off-by: Eric Biggers <ebiggers@google.com>
Link: https://lore.kernel.org/r/20221106224841.279231-2-ebiggers@kernel.org
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
fs/ext4/fast_commit.c
fs/ext4/fast_commit.h
include/trace/events/ext4.h