summaryrefslogtreecommitdiff
path: root/scripts/Makefile.thinlto
diff options
context:
space:
mode:
authorEric Biggers <ebiggers@kernel.org>2026-10-25 13:48:07 -0700
committerEric Biggers <ebiggers@kernel.org>2026-10-28 10:53:43 -0700
commitc349b233d6ab0fc3517401a1e2d36f5f90eb8c9b (patch)
treecd99f4ecb7c793e3b7e3fe1eb84d5d9c42fe920c /scripts/Makefile.thinlto
parent28d74059fddbd8ae83c7715056b303c402071f6f (diff)
downloadlinux-c349b233d6ab0fc3517401a1e2d36f5f90eb8c9b.tar.gz
linux-c349b233d6ab0fc3517401a1e2d36f5f90eb8c9b.zip
fsverity: Set S_VERITY only after rollback is no longer possible
Commit f77f281b6118 ("fsverity: use a hashtable to find the fsverity_info") changed the implementation of FS_IOC_ENABLE_VERITY to make concurrent reads start going through fsverity verification slightly earlier than they did before. Instead of it happening when enable_verity() calls fsverity_set_info(), it now happens when ->end_enable_verity() sets S_VERITY. However, ext4 and btrfs can roll back verity after they set S_VERITY, causing a use-after-free. Fix that by making ext4 and btrfs set S_VERITY only after rollback is no longer possible. On failure, don't roll back S_VERITY, but do roll back the filesystem-specific verity flag. Also update enable_verity() to handle any future instances of this bug more safely by warning and *not* freeing the fsverity_info. Finally, tweak some comments. Clarify one, and move information from another to its proper place in the comment for ->end_enable_verity(). Fixes: f77f281b6118 ("fsverity: use a hashtable to find the fsverity_info") Cc: stable@vger.kernel.org Reviewed-by: Christoph Hellwig <hch@lst.de> Link: https://patch.msgid.link/20261025204807.122875-1-ebiggers@kernel.org Signed-off-by: Eric Biggers <ebiggers@kernel.org>
Diffstat (limited to 'scripts/Makefile.thinlto')
0 files changed, 0 insertions, 0 deletions