]> git.hungrycats.org Git - linux/commit
exfat: fix file being changed by unaligned direct write
authorYuezhang Mo <Yuezhang.Mo@sony.com>
Thu, 17 Oct 2024 01:25:06 +0000 (09:25 +0800)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 5 Dec 2024 13:02:31 +0000 (14:02 +0100)
commitad6e5bdca39bc350f78b20fb3b868b826dfb096a
treed78408dc90c41803f5b20a49998975c319002089
parent28af028a71371df5fcbf807fd4444bba8d0c33cc
exfat: fix file being changed by unaligned direct write

[ Upstream commit 2e94e5bb94a3e641a25716a560bf474225fda83c ]

Unaligned direct writes are invalid and should return an error
without making any changes, rather than extending ->valid_size
and then returning an error. Therefore, alignment checking is
required before extending ->valid_size.

Fixes: 11a347fb6cef ("exfat: change to get file size from DataLength")
Signed-off-by: Yuezhang Mo <Yuezhang.Mo@sony.com>
Co-developed-by: Namjae Jeon <linkinjeon@kernel.org>
Signed-off-by: Namjae Jeon <linkinjeon@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
fs/exfat/file.c