Messages in this thread | | | Date | Wed, 11 Mar 2020 12:48:39 -0700 | From | Eric Biggers <> | Subject | [GIT PULL] fscrypt fix for v5.6-rc6 |
| |
The following changes since commit 98d54f81e36ba3bf92172791eba5ca5bd813989b:
Linux 5.6-rc4 (2020-03-01 16:38:46 -0600)
are available in the Git repository at:
https://git.kernel.org/pub/scm/fs/fscrypt/fscrypt.git tags/fscrypt-for-linus
for you to fetch changes up to 2b4eae95c7361e0a147b838715c8baa1380a428f:
fscrypt: don't evict dirty inodes after removing key (2020-03-07 18:43:07 -0800)
----------------------------------------------------------------
Fix a bug where if userspace is writing to encrypted files while the FS_IOC_REMOVE_ENCRYPTION_KEY ioctl (introduced in v5.4) is running, dirty inodes could be evicted, causing writes could be lost or the filesystem to hang due to a use-after-free. This was encountered during real-world use, not just theoretical.
Tested with the existing fscrypt xfstests, and with a new xfstest I wrote to reproduce this bug. This fix does expose an existing bug with '-o lazytime' that Ted is working on fixing, but this fscrypt fix is more critical and is needed anyway regardless of the lazytime fix.
---------------------------------------------------------------- Eric Biggers (1): fscrypt: don't evict dirty inodes after removing key
fs/crypto/keysetup.c | 9 +++++++++ 1 file changed, 9 insertions(+)
| |