exfat: fix soft lockup in exfat_clear_bitmap
authorNamjae Jeon <linkinjeon@kernel.org>
Fri, 31 Jan 2025 03:55:55 +0000 (12:55 +0900)
committerNamjae Jeon <linkinjeon@kernel.org>
Wed, 5 Mar 2025 12:53:19 +0000 (21:53 +0900)
commit9da33619e0ca53627641bc97d1b93ec741299111
treec390dc9edbcbc4dea7e13e4c69cc5f01cad20e7e
parent6697f819a10b238ccf01998c3f203d65d8374696
exfat: fix soft lockup in exfat_clear_bitmap

bitmap clear loop will take long time in __exfat_free_cluster()
if data size of file/dir enty is invalid.
If cluster bit in bitmap is already clear, stop clearing bitmap go to
out of loop.

Fixes: 31023864e67a ("exfat: add fat entry operations")
Reported-by: Kun Hu <huk23@m.fudan.edu.cn>, Jiaji Qin <jjtan24@m.fudan.edu.cn>
Reviewed-by: Sungjong Seo <sj1557.seo@samsung.com>
Signed-off-by: Namjae Jeon <linkinjeon@kernel.org>
fs/exfat/balloc.c
fs/exfat/exfat_fs.h
fs/exfat/fatent.c