f2fs: introduce __f2fs_commit_super
PATCH 3/3 f2fs: introduce __f2fs_commit_super
Introduce __f2fs_commit_super to include duplicated codes in f2fs_commit_super for cleanup.
Signed-off-by Chao Yu <[email protected]>
--- fs/f2fs/super.c | 28 +++++++++++++--------------- 1 file changed, 13 insertions(+), 15 deletions(-)
fs/f2fs/super.c +13 -15
@@ -1201,14 +1201,13 @@ next:return 0 ; } -int f2fs_commit_super (struct f2fs_sb_info *sbi,bool recover) +int __f2fs_commit_super (struct f2fs_sb_info *sbi,int block) {struct f2fs_super_block *super =F2FS_RAW_SUPER (sbi);struct buffer_head *bh;int err; -/* write back-up superblock first */ - bh =sb_getblk (sbi->sb, sbi->valid_super_block ?0 :1 ); + bh =sb_getblk (sbi->sb, block);if (!bh)return -EIO ;
@@ -1222,23 +1221,22 @@ int f2fs_commit_super(struct f2fs_sb_info *sbi, bool recover) err =__sync_dirty_buffer (bh,WRITE_FLUSH_FUA );brelse (bh); +return err; +} + +int f2fs_commit_super (struct f2fs_sb_info *sbi,bool recover) +{ +int err; + +/* write back-up superblock first */ + err =__f2fs_commit_super (sbi, sbi->valid_super_block ?0 :1 ); +/* if we are in recovery path, skip writing valid superblock */ if (recover || err)return err; - bh =sb_getblk (sbi->sb, sbi->valid_super_block); -if (!bh) -return -EIO ; -/* write current valid superblock */ -lock_buffer (bh); -memcpy (bh->b_data +F2FS_SUPER_OFFSET , super,sizeof (*super)); -set_buffer_uptodate (bh); -set_buffer_dirty (bh); -unlock_buffer (bh); - - err =__sync_dirty_buffer (bh,WRITE_FLUSH_FUA ); -brelse (bh); + err =__f2fs_commit_super (sbi, sbi->valid_super_block);return err; }
Signature · 1 line
2.6.3
Jaegeuk Kim
maintainerHi Chao,
Quoted 51 lines · Chao Yu
Introduce
__f2fs_commit_superto include duplicated codes inf2fs_commit_superfor cleanup.Signed-off-by Chao Yu <[email protected]>--- fs/f2fs/super.c | 28 +++++++++++++--------------- 1 file changed, 13 insertions(+), 15 deletions(-)fs/f2fs/super.c +12
-7@@ -1201,14 +1201,13 @@ next:return 0 ; } -int f2fs_commit_super (struct f2fs_sb_info *sbi,bool recover) +int __f2fs_commit_super (struct f2fs_sb_info *sbi,int block) {struct f2fs_super_block *super =F2FS_RAW_SUPER (sbi);struct buffer_head *bh;int err; -/* write back-up superblock first */ - bh =sb_getblk (sbi->sb, sbi->valid_super_block ?0 :1 ); + bh =sb_getblk (sbi->sb, block);if (!bh)return -EIO ;@@ -1222,23 +1221,22 @@ int f2fs_commit_super(struct f2fs_sb_info *sbi, bool recover) err =__sync_dirty_buffer (bh,WRITE_FLUSH_FUA );brelse (bh); +return err; +} + +int f2fs_commit_super (struct f2fs_sb_info *sbi,bool recover) +{ +int err; + +/* write back-up superblock first */ + err =__f2fs_commit_super (sbi, sbi->valid_super_block ?0 :1 ); +/* if we are in recovery path, skip writing valid superblock */ if (recover || err)return err; - bh =sb_getblk (sbi->sb, sbi->valid_super_block); -if (!bh) -return -EIO ; -
fs/f2fs/super.c int f2fs_commit_super(struct f2fs_sb_info *sbi, bool recover) · line 1239
Quoted 10 lines
fs/f2fs/super.c +1
-8/* write current valid superblock */ -lock_buffer (bh); -memcpy (bh->b_data +F2FS_SUPER_OFFSET , super,sizeof (*super)); -set_buffer_uptodate (bh); -set_buffer_dirty (bh); -unlock_buffer (bh); - - err =__sync_dirty_buffer (bh,WRITE_FLUSH_FUA ); -brelse (bh); + err =__f2fs_commit_super (sbi, sbi->valid_super_block);
I just merged this patch with:
return __f2fs_commit_super().
Thanks,
Quoted 6 lines
fs/f2fs/super.c +0
-0return err; }Signature · 1 line
2.6.3