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 13:03:37 +0000 (14:03 +0100)
commit284ad310542ffb4e5c2acf11d8a6420b5b7b9cea
tree82f706dd0358fb617e7744662e3d16542d76b35a
parent823b487cfbfc80f4accb8e3bad23d02745bcf6f4
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