diff options
author | Yuezhang Mo <Yuezhang.Mo@sony.com> | 2022-03-19 11:08:03 +0900 |
---|---|---|
committer | Namjae Jeon <linkinjeon@kernel.org> | 2022-04-01 10:51:03 +0900 |
commit | a4a3d8c52d952ab1f5c8b8b67b57f2e01936628d (patch) | |
tree | 7c60133f7d4c1e570978bc4ad5bd0df8b44d484f /fs/exfat/file.c | |
parent | 9ec784bf774c2d3b35a7577fc6441cfbd60aefea (diff) |
exfat: do not clear VolumeDirty in writeback
Before this commit, VolumeDirty will be cleared first in
writeback if 'dirsync' or 'sync' is not enabled. If the power
is suddenly cut off after cleaning VolumeDirty but other
updates are not written, the exFAT filesystem will not be able
to detect the power failure in the next mount.
And VolumeDirty will be set again but not cleared when updating
the parent directory. It means that BootSector will be written at
least once in each write-back, which will shorten the life of the
device.
Reviewed-by: Andy Wu <Andy.Wu@sony.com>
Reviewed-by: Aoyama Wataru <wataru.aoyama@sony.com>
Signed-off-by: Yuezhang Mo <Yuezhang.Mo@sony.com>
Signed-off-by: Namjae Jeon <linkinjeon@kernel.org>
Diffstat (limited to 'fs/exfat/file.c')
-rw-r--r-- | fs/exfat/file.c | 2 |
1 files changed, 0 insertions, 2 deletions
diff --git a/fs/exfat/file.c b/fs/exfat/file.c index d890fd34bb2d..2f5130059236 100644 --- a/fs/exfat/file.c +++ b/fs/exfat/file.c @@ -218,8 +218,6 @@ int __exfat_truncate(struct inode *inode, loff_t new_size) if (exfat_free_cluster(inode, &clu)) return -EIO; - exfat_clear_volume_dirty(sb); - return 0; } |