Commit 019a8912 authored by Chao Yu's avatar Chao Yu Committed by Jaegeuk Kim
Browse files

f2fs: introduce is_{meta,node}_folio



Just cleanup, no changes.

Signed-off-by: default avatarChao Yu <chao@kernel.org>
Signed-off-by: default avatarJaegeuk Kim <jaegeuk@kernel.org>
parent deecd282
Loading
Loading
Loading
Loading
+2 −2
Original line number Diff line number Diff line
@@ -93,7 +93,7 @@ static struct folio *__get_meta_folio(struct f2fs_sb_info *sbi, pgoff_t index,
	f2fs_update_iostat(sbi, NULL, FS_META_READ_IO, F2FS_BLKSIZE);

	folio_lock(folio);
	if (unlikely(folio->mapping != mapping)) {
	if (unlikely(!is_meta_folio(folio))) {
		f2fs_folio_put(folio, true);
		goto repeat;
	}
@@ -439,7 +439,7 @@ long f2fs_sync_meta_pages(struct f2fs_sb_info *sbi, enum page_type type,

			folio_lock(folio);

			if (unlikely(folio->mapping != mapping)) {
			if (unlikely(!is_meta_folio(folio))) {
continue_unlock:
				folio_unlock(folio);
				continue;
+1 −1
Original line number Diff line number Diff line
@@ -354,7 +354,7 @@ static void f2fs_write_end_io(struct bio *bio)
						STOP_CP_REASON_WRITE_FAIL);
		}

		f2fs_bug_on(sbi, folio->mapping == NODE_MAPPING(sbi) &&
		f2fs_bug_on(sbi, is_node_folio(folio) &&
				folio->index != nid_of_node(&folio->page));

		dec_page_count(sbi, type);
+11 −2
Original line number Diff line number Diff line
@@ -2088,6 +2088,16 @@ static inline struct address_space *NODE_MAPPING(struct f2fs_sb_info *sbi)
	return sbi->node_inode->i_mapping;
}

static inline bool is_meta_folio(struct folio *folio)
{
	return folio->mapping == META_MAPPING(F2FS_F_SB(folio));
}

static inline bool is_node_folio(struct folio *folio)
{
	return folio->mapping == NODE_MAPPING(F2FS_F_SB(folio));
}

static inline bool is_sbi_flag_set(struct f2fs_sb_info *sbi, unsigned int type)
{
	return test_bit(type, &sbi->s_flag);
@@ -3738,8 +3748,7 @@ struct node_info;

int f2fs_check_nid_range(struct f2fs_sb_info *sbi, nid_t nid);
bool f2fs_available_free_memory(struct f2fs_sb_info *sbi, int type);
bool f2fs_in_warm_node_list(struct f2fs_sb_info *sbi,
		const struct folio *folio);
bool f2fs_in_warm_node_list(struct f2fs_sb_info *sbi, struct folio *folio);
void f2fs_init_fsync_node_info(struct f2fs_sb_info *sbi);
void f2fs_del_fsync_node_entry(struct f2fs_sb_info *sbi, struct folio *folio);
void f2fs_reset_fsync_node_info(struct f2fs_sb_info *sbi);
+1 −1
Original line number Diff line number Diff line
@@ -1382,7 +1382,7 @@ static int move_data_block(struct inode *inode, block_t bidx,
							F2FS_BLKSIZE);

		folio_lock(mfolio);
		if (unlikely(mfolio->mapping != META_MAPPING(fio.sbi) ||
		if (unlikely(!is_meta_folio(mfolio) ||
			     !folio_test_uptodate(mfolio))) {
			err = -EIO;
			f2fs_folio_put(mfolio, true);
+9 −9
Original line number Diff line number Diff line
@@ -310,10 +310,10 @@ static unsigned int __gang_lookup_nat_set(struct f2fs_nm_info *nm_i,
							start, nr);
}

bool f2fs_in_warm_node_list(struct f2fs_sb_info *sbi, const struct folio *folio)
bool f2fs_in_warm_node_list(struct f2fs_sb_info *sbi, struct folio *folio)
{
	return NODE_MAPPING(sbi) == folio->mapping &&
			IS_DNODE(&folio->page) && is_cold_node(&folio->page);
	return is_node_folio(folio) && IS_DNODE(&folio->page) &&
					is_cold_node(&folio->page);
}

void f2fs_init_fsync_node_info(struct f2fs_sb_info *sbi)
@@ -1222,7 +1222,7 @@ int f2fs_truncate_inode_blocks(struct inode *inode, pgoff_t from)
			goto fail;
		if (offset[1] == 0 && get_nid(&folio->page, offset[0], true)) {
			folio_lock(folio);
			BUG_ON(folio->mapping != NODE_MAPPING(sbi));
			BUG_ON(!is_node_folio(folio));
			set_nid(folio, offset[0], 0, true);
			folio_unlock(folio);
		}
@@ -1507,7 +1507,7 @@ static struct folio *__get_node_folio(struct f2fs_sb_info *sbi, pgoff_t nid,

	folio_lock(folio);

	if (unlikely(folio->mapping != NODE_MAPPING(sbi))) {
	if (unlikely(!is_node_folio(folio))) {
		f2fs_folio_put(folio, true);
		goto repeat;
	}
@@ -1625,7 +1625,7 @@ static struct folio *last_fsync_dnode(struct f2fs_sb_info *sbi, nid_t ino)

			folio_lock(folio);

			if (unlikely(folio->mapping != NODE_MAPPING(sbi))) {
			if (unlikely(!is_node_folio(folio))) {
continue_unlock:
				folio_unlock(folio);
				continue;
@@ -1834,7 +1834,7 @@ int f2fs_fsync_node_pages(struct f2fs_sb_info *sbi, struct inode *inode,

			folio_lock(folio);

			if (unlikely(folio->mapping != NODE_MAPPING(sbi))) {
			if (unlikely(!is_node_folio(folio))) {
continue_unlock:
				folio_unlock(folio);
				continue;
@@ -1969,7 +1969,7 @@ void f2fs_flush_inline_data(struct f2fs_sb_info *sbi)

			folio_lock(folio);

			if (unlikely(folio->mapping != NODE_MAPPING(sbi)))
			if (unlikely(!is_node_folio(folio)))
				goto unlock;
			if (!folio_test_dirty(folio))
				goto unlock;
@@ -2041,7 +2041,7 @@ int f2fs_sync_node_pages(struct f2fs_sb_info *sbi,
			else if (!folio_trylock(folio))
				continue;

			if (unlikely(folio->mapping != NODE_MAPPING(sbi))) {
			if (unlikely(!is_node_folio(folio))) {
continue_unlock:
				folio_unlock(folio);
				continue;