diff options
author | Yuezhang Mo <Yuezhang.Mo@sony.com> | 2022-08-05 15:55:58 +0800 |
---|---|---|
committer | Namjae Jeon <linkinjeon@kernel.org> | 2024-03-19 20:55:40 +0900 |
commit | ff4343da02e8918deca8ddc91f3855a454e96868 (patch) | |
tree | 59637e6d44d170f669cdcff9b7c6c6b85f09d4bf /fs/exfat/exfat_fs.h | |
parent | cf8663fa994343941fbbd5c1a7f4d131c366ef2f (diff) | |
download | lwn-ff4343da02e8918deca8ddc91f3855a454e96868.tar.gz lwn-ff4343da02e8918deca8ddc91f3855a454e96868.zip |
exfat: convert exfat_remove_entries() to use dentry cache
Before this conversion, in exfat_remove_entries(), to mark the
dentries in a dentry set as deleted, the sync times is equals
the dentry numbers if 'dirsync' or 'sync' is enabled.
That affects not only performance but also device life.
After this conversion, only needs to be synchronized once if
'dirsync' or 'sync' is enabled.
Signed-off-by: Yuezhang Mo <Yuezhang.Mo@sony.com>
Reviewed-by: Andy Wu <Andy.Wu@sony.com>
Reviewed-by: Aoyama Wataru <wataru.aoyama@sony.com>
Reviewed-by: Sungjong Seo <sj1557.seo@samsung.com>
Signed-off-by: Namjae Jeon <linkinjeon@kernel.org>
Diffstat (limited to 'fs/exfat/exfat_fs.h')
-rw-r--r-- | fs/exfat/exfat_fs.h | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/fs/exfat/exfat_fs.h b/fs/exfat/exfat_fs.h index ecc5f6a3ad87..83ae84a657cd 100644 --- a/fs/exfat/exfat_fs.h +++ b/fs/exfat/exfat_fs.h @@ -485,8 +485,8 @@ void exfat_init_dir_entry(struct exfat_entry_set_cache *es, unsigned long long size, struct timespec64 *ts); int exfat_init_ext_entry(struct inode *inode, struct exfat_chain *p_dir, int entry, int num_entries, struct exfat_uni_name *p_uniname); -int exfat_remove_entries(struct inode *inode, struct exfat_chain *p_dir, - int entry, int order, int num_entries); +void exfat_remove_entries(struct inode *inode, struct exfat_entry_set_cache *es, + int order); int exfat_update_dir_chksum(struct inode *inode, struct exfat_chain *p_dir, int entry); void exfat_update_dir_chksum_with_entry_set(struct exfat_entry_set_cache *es); |