exfat: fix incorrect loading of i_blocks for large files
authorSungjong Seo <sj1557.seo@samsung.com>
Tue, 19 Oct 2021 06:14:21 +0000 (15:14 +0900)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 18 Nov 2021 18:15:52 +0000 (19:15 +0100)
commite119d7ef5f92cdb371d25a16c8a0c6cf970765cc
tree74969c98372fba3f37880735e89ecf3a577a1708
parentaa0b015e87a80f93398c6c7d359f169e5743befa
exfat: fix incorrect loading of i_blocks for large files

commit 0c336d6e33f4bedc443404c89f43c91c8bd9ee11 upstream.

When calculating i_blocks, there was a mistake that was masked with a
32-bit variable. So i_blocks for files larger than 4 GiB had incorrect
values. Mask with a 64-bit variable instead of 32-bit one.

Fixes: 5f2aa075070c ("exfat: add inode operations")
Cc: stable@vger.kernel.org # v5.7+
Reported-by: Ganapathi Kamath <hgkamath@hotmail.com>
Signed-off-by: Sungjong Seo <sj1557.seo@samsung.com>
Signed-off-by: Namjae Jeon <linkinjeon@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
fs/exfat/inode.c