summaryrefslogtreecommitdiff
path: root/fs/exfat/file.c
diff options
context:
space:
mode:
authorNamjae Jeon <linkinjeon@kernel.org>2026-05-07 09:05:08 +0900
committerNamjae Jeon <linkinjeon@kernel.org>2026-06-15 19:55:42 +0900
commit286ae368871d2a93b68148c7684b8cff63c9ba80 (patch)
tree13911073bfd05530391f55ab41d824a291e900fe /fs/exfat/file.c
parenta095c12ef13156cc86de858c8d127f24895e2d6e (diff)
downloadlinux-next-286ae368871d2a93b68148c7684b8cff63c9ba80.tar.gz
linux-next-286ae368871d2a93b68148c7684b8cff63c9ba80.zip
exfat: add support for multi-cluster allocation
Currently exfat_map_cluster() allocates and returns only one cluster at a time even when more clusters are needed. This causes multiple FAT walks and repeated allocation calls during large sequential writes or when using iomap for writes. This change exfat_map_cluster() and exfat_alloc_cluster() to be able to allocate multiple contiguous clusters. Acked-by: Christoph Hellwig <hch@lst.de> Acked-by: "Darrick J. Wong" <djwong@kernel.org> Signed-off-by: Namjae Jeon <linkinjeon@kernel.org>
Diffstat (limited to 'fs/exfat/file.c')
-rw-r--r--fs/exfat/file.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/fs/exfat/file.c b/fs/exfat/file.c
index 857cd3030cae..89cc3d046f0f 100644
--- a/fs/exfat/file.c
+++ b/fs/exfat/file.c
@@ -57,7 +57,7 @@ static int exfat_cont_expand(struct inode *inode, loff_t size)
clu.flags = ei->flags;
ret = exfat_alloc_cluster(inode, new_num_clusters - num_clusters,
- &clu, inode_needs_sync(inode));
+ &clu, inode_needs_sync(inode), false);
if (ret)
return ret;