diff options
Diffstat (limited to 'fs/f2fs/gc.c')
-rw-r--r-- | fs/f2fs/gc.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/fs/f2fs/gc.c b/fs/f2fs/gc.c index 29ceb9d71c8c..c68fba5ffadb 100644 --- a/fs/f2fs/gc.c +++ b/fs/f2fs/gc.c | |||
@@ -520,6 +520,10 @@ static int check_dnode(struct f2fs_sb_info *sbi, struct f2fs_summary *sum, | |||
520 | 520 | ||
521 | static void move_data_page(struct inode *inode, struct page *page, int gc_type) | 521 | static void move_data_page(struct inode *inode, struct page *page, int gc_type) |
522 | { | 522 | { |
523 | struct writeback_control wbc = { | ||
524 | .sync_mode = 1, | ||
525 | }; | ||
526 | |||
523 | if (gc_type == BG_GC) { | 527 | if (gc_type == BG_GC) { |
524 | if (PageWriteback(page)) | 528 | if (PageWriteback(page)) |
525 | goto out; | 529 | goto out; |
@@ -536,7 +540,7 @@ static void move_data_page(struct inode *inode, struct page *page, int gc_type) | |||
536 | inode_dec_dirty_dents(inode); | 540 | inode_dec_dirty_dents(inode); |
537 | } | 541 | } |
538 | set_cold_data(page); | 542 | set_cold_data(page); |
539 | do_write_data_page(page); | 543 | do_write_data_page(page, &wbc); |
540 | clear_cold_data(page); | 544 | clear_cold_data(page); |
541 | } | 545 | } |
542 | out: | 546 | out: |