Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 76f60268 authored by Jaegeuk Kim's avatar Jaegeuk Kim
Browse files

f2fs: call redirty_page_for_writepage



This patch replace some general codes with redirty_page_for_writepage, which
can be enabled after consideration on additional procedure like counting dirty
pages appropriately.

Signed-off-by: default avatarJaegeuk Kim <jaegeuk.kim@samsung.com>
parent 1e87a78d
Loading
Loading
Loading
Loading
+1 −4
Original line number Diff line number Diff line
@@ -174,10 +174,7 @@ static int f2fs_write_meta_page(struct page *page,
	return 0;

redirty_out:
	dec_page_count(sbi, F2FS_DIRTY_META);
	wbc->pages_skipped++;
	account_page_redirty(page);
	set_page_dirty(page);
	redirty_page_for_writepage(wbc, page);
	return AOP_WRITEPAGE_ACTIVATE;
}

+3 −7
Original line number Diff line number Diff line
@@ -798,10 +798,8 @@ static int f2fs_write_data_page(struct page *page,
	 * this page does not have to be written to disk.
	 */
	offset = i_size & (PAGE_CACHE_SIZE - 1);
	if ((page->index >= end_index + 1) || !offset) {
		inode_dec_dirty_dents(inode);
	if ((page->index >= end_index + 1) || !offset)
		goto out;
	}

	zero_user_segment(page, offset, PAGE_CACHE_SIZE);
write:
@@ -810,7 +808,6 @@ static int f2fs_write_data_page(struct page *page,

	/* Dentry blocks are controlled by checkpoint */
	if (S_ISDIR(inode->i_mode)) {
		inode_dec_dirty_dents(inode);
		err = do_write_data_page(page, &fio);
		goto done;
	}
@@ -832,15 +829,14 @@ static int f2fs_write_data_page(struct page *page,

	clear_cold_data(page);
out:
	inode_dec_dirty_dents(inode);
	unlock_page(page);
	if (need_balance_fs)
		f2fs_balance_fs(sbi);
	return 0;

redirty_out:
	wbc->pages_skipped++;
	account_page_redirty(page);
	set_page_dirty(page);
	redirty_page_for_writepage(wbc, page);
	return AOP_WRITEPAGE_ACTIVATE;
}

+1 −4
Original line number Diff line number Diff line
@@ -1227,10 +1227,7 @@ static int f2fs_write_node_page(struct page *page,
	return 0;

redirty_out:
	dec_page_count(sbi, F2FS_DIRTY_NODES);
	wbc->pages_skipped++;
	account_page_redirty(page);
	set_page_dirty(page);
	redirty_page_for_writepage(wbc, page);
	return AOP_WRITEPAGE_ACTIVATE;
}