From: Yuezhang Mo Date: Thu, 28 Jul 2022 02:01:26 +0000 (+0800) Subject: exfat: fix overflow for large capacity partition X-Git-Tag: v6.6.17~6611^2 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=2e9ceb6728f1dc2fa4b5d08f37d88cbc49a20a62;p=platform%2Fkernel%2Flinux-rpi.git exfat: fix overflow for large capacity partition Using int type for sector index, there will be overflow in a large capacity partition. For example, if storage with sector size of 512 bytes and partition capacity is larger than 2TB, there will be overflow. Fixes: 1b6138385499 ("exfat: reduce block requests when zeroing a cluster") Cc: stable@vger.kernel.org # v5.19+ Signed-off-by: Yuezhang Mo Reviewed-by: Andy Wu Reviewed-by: Aoyama Wataru Acked-by: Sungjong Seo Signed-off-by: Namjae Jeon --- diff --git a/fs/exfat/fatent.c b/fs/exfat/fatent.c index ee0b7cf..41ae4cc 100644 --- a/fs/exfat/fatent.c +++ b/fs/exfat/fatent.c @@ -270,8 +270,7 @@ int exfat_zeroed_cluster(struct inode *dir, unsigned int clu) struct super_block *sb = dir->i_sb; struct exfat_sb_info *sbi = EXFAT_SB(sb); struct buffer_head *bh; - sector_t blknr, last_blknr; - int i; + sector_t blknr, last_blknr, i; blknr = exfat_cluster_to_sector(sbi, clu); last_blknr = blknr + sbi->sect_per_clus;