[PATCH] fat: move fat_clusters_flush() to write_super()
It is overkill to update the FS_INFO whenever modifying prev_free/free_clusters, because those are just a hint. So, this patch uses ->write_super() for updating FS_INFO instead. Signed-off-by: OGAWA Hirofumi <hirofumi@mail.parknet.co.jp> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
This commit is contained in:
committed by
Linus Torvalds
parent
9ded96f24c
commit
a6bf6b211c
@@ -374,12 +374,17 @@ static void fat_clear_inode(struct inode *inode)
|
||||
unlock_kernel();
|
||||
}
|
||||
|
||||
static void fat_put_super(struct super_block *sb)
|
||||
static void fat_write_super(struct super_block *sb)
|
||||
{
|
||||
struct msdos_sb_info *sbi = MSDOS_SB(sb);
|
||||
sb->s_dirt = 0;
|
||||
|
||||
if (!(sb->s_flags & MS_RDONLY))
|
||||
fat_clusters_flush(sb);
|
||||
}
|
||||
|
||||
static void fat_put_super(struct super_block *sb)
|
||||
{
|
||||
struct msdos_sb_info *sbi = MSDOS_SB(sb);
|
||||
|
||||
if (sbi->nls_disk) {
|
||||
unload_nls(sbi->nls_disk);
|
||||
@@ -546,6 +551,7 @@ static struct super_operations fat_sops = {
|
||||
.write_inode = fat_write_inode,
|
||||
.delete_inode = fat_delete_inode,
|
||||
.put_super = fat_put_super,
|
||||
.write_super = fat_write_super,
|
||||
.statfs = fat_statfs,
|
||||
.clear_inode = fat_clear_inode,
|
||||
.remount_fs = fat_remount,
|
||||
|
Reference in New Issue
Block a user