Loading fs/f2fs/checkpoint.c +1 −3 Original line number Diff line number Diff line Loading @@ -1141,9 +1141,7 @@ int write_checkpoint(struct f2fs_sb_info *sbi, struct cp_control *cpc) trace_f2fs_write_checkpoint(sbi->sb, cpc->reason, "finish block_ops"); f2fs_submit_merged_bio(sbi, DATA, WRITE); f2fs_submit_merged_bio(sbi, NODE, WRITE); f2fs_submit_merged_bio(sbi, META, WRITE); f2fs_flush_merged_bios(sbi); /* * update checkpoint pack index Loading fs/f2fs/data.c +7 −0 Original line number Diff line number Diff line Loading @@ -206,6 +206,13 @@ void f2fs_submit_merged_bio_cond(struct f2fs_sb_info *sbi, __f2fs_submit_merged_bio(sbi, inode, page, ino, type, rw); } void f2fs_flush_merged_bios(struct f2fs_sb_info *sbi) { f2fs_submit_merged_bio(sbi, DATA, WRITE); f2fs_submit_merged_bio(sbi, NODE, WRITE); f2fs_submit_merged_bio(sbi, META, WRITE); } /* * Fill the locked page with data located in the block address. * Return unlocked page. Loading fs/f2fs/f2fs.h +1 −0 Original line number Diff line number Diff line Loading @@ -1907,6 +1907,7 @@ void destroy_checkpoint_caches(void); void f2fs_submit_merged_bio(struct f2fs_sb_info *, enum page_type, int); void f2fs_submit_merged_bio_cond(struct f2fs_sb_info *, struct inode *, struct page *, nid_t, enum page_type, int); void f2fs_flush_merged_bios(struct f2fs_sb_info *); int f2fs_submit_page_bio(struct f2fs_io_info *); void f2fs_submit_page_mbio(struct f2fs_io_info *); void set_data_blkaddr(struct dnode_of_data *); Loading fs/f2fs/super.c +2 −5 Original line number Diff line number Diff line Loading @@ -583,11 +583,8 @@ static void f2fs_put_super(struct super_block *sb) mutex_unlock(&sbi->umount_mutex); /* our cp_error case, we can wait for any writeback page */ if (get_pages(sbi, F2FS_WRITEBACK)) { f2fs_submit_merged_bio(sbi, DATA, WRITE); f2fs_submit_merged_bio(sbi, NODE, WRITE); f2fs_submit_merged_bio(sbi, META, WRITE); } if (get_pages(sbi, F2FS_WRITEBACK)) f2fs_flush_merged_bios(sbi); iput(sbi->node_inode); iput(sbi->meta_inode); Loading Loading
fs/f2fs/checkpoint.c +1 −3 Original line number Diff line number Diff line Loading @@ -1141,9 +1141,7 @@ int write_checkpoint(struct f2fs_sb_info *sbi, struct cp_control *cpc) trace_f2fs_write_checkpoint(sbi->sb, cpc->reason, "finish block_ops"); f2fs_submit_merged_bio(sbi, DATA, WRITE); f2fs_submit_merged_bio(sbi, NODE, WRITE); f2fs_submit_merged_bio(sbi, META, WRITE); f2fs_flush_merged_bios(sbi); /* * update checkpoint pack index Loading
fs/f2fs/data.c +7 −0 Original line number Diff line number Diff line Loading @@ -206,6 +206,13 @@ void f2fs_submit_merged_bio_cond(struct f2fs_sb_info *sbi, __f2fs_submit_merged_bio(sbi, inode, page, ino, type, rw); } void f2fs_flush_merged_bios(struct f2fs_sb_info *sbi) { f2fs_submit_merged_bio(sbi, DATA, WRITE); f2fs_submit_merged_bio(sbi, NODE, WRITE); f2fs_submit_merged_bio(sbi, META, WRITE); } /* * Fill the locked page with data located in the block address. * Return unlocked page. Loading
fs/f2fs/f2fs.h +1 −0 Original line number Diff line number Diff line Loading @@ -1907,6 +1907,7 @@ void destroy_checkpoint_caches(void); void f2fs_submit_merged_bio(struct f2fs_sb_info *, enum page_type, int); void f2fs_submit_merged_bio_cond(struct f2fs_sb_info *, struct inode *, struct page *, nid_t, enum page_type, int); void f2fs_flush_merged_bios(struct f2fs_sb_info *); int f2fs_submit_page_bio(struct f2fs_io_info *); void f2fs_submit_page_mbio(struct f2fs_io_info *); void set_data_blkaddr(struct dnode_of_data *); Loading
fs/f2fs/super.c +2 −5 Original line number Diff line number Diff line Loading @@ -583,11 +583,8 @@ static void f2fs_put_super(struct super_block *sb) mutex_unlock(&sbi->umount_mutex); /* our cp_error case, we can wait for any writeback page */ if (get_pages(sbi, F2FS_WRITEBACK)) { f2fs_submit_merged_bio(sbi, DATA, WRITE); f2fs_submit_merged_bio(sbi, NODE, WRITE); f2fs_submit_merged_bio(sbi, META, WRITE); } if (get_pages(sbi, F2FS_WRITEBACK)) f2fs_flush_merged_bios(sbi); iput(sbi->node_inode); iput(sbi->meta_inode); Loading