mirror of
https://github.com/torvalds/linux.git
synced 2026-05-27 16:44:58 +02:00
f2fs: Convert f2fs_in_warm_node_list() to take a folio
All its callers now have access to a folio, so pass it in. Removes an access to page->mapping. Signed-off-by: Matthew Wilcox (Oracle) <willy@infradead.org> Reviewed-by: Chao Yu <chao@kernel.org> Signed-off-by: Jaegeuk Kim <jaegeuk@kernel.org>
This commit is contained in:
parent
521a468486
commit
1a58a41ccc
|
|
@ -358,7 +358,7 @@ static void f2fs_write_end_io(struct bio *bio)
|
|||
folio->index != nid_of_node(&folio->page));
|
||||
|
||||
dec_page_count(sbi, type);
|
||||
if (f2fs_in_warm_node_list(sbi, &folio->page))
|
||||
if (f2fs_in_warm_node_list(sbi, folio))
|
||||
f2fs_del_fsync_node_entry(sbi, &folio->page);
|
||||
clear_page_private_gcing(&folio->page);
|
||||
folio_end_writeback(folio);
|
||||
|
|
|
|||
|
|
@ -3678,7 +3678,8 @@ 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, struct page *page);
|
||||
bool f2fs_in_warm_node_list(struct f2fs_sb_info *sbi,
|
||||
const 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 page *page);
|
||||
void f2fs_reset_fsync_node_info(struct f2fs_sb_info *sbi);
|
||||
|
|
|
|||
|
|
@ -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, struct page *page)
|
||||
bool f2fs_in_warm_node_list(struct f2fs_sb_info *sbi, const struct folio *folio)
|
||||
{
|
||||
return NODE_MAPPING(sbi) == page->mapping &&
|
||||
IS_DNODE(page) && is_cold_node(page);
|
||||
return NODE_MAPPING(sbi) == folio->mapping &&
|
||||
IS_DNODE(&folio->page) && is_cold_node(&folio->page);
|
||||
}
|
||||
|
||||
void f2fs_init_fsync_node_info(struct f2fs_sb_info *sbi)
|
||||
|
|
@ -1701,7 +1701,7 @@ static int __write_node_page(struct page *page, bool atomic, bool *submitted,
|
|||
fio.op_flags |= REQ_PREFLUSH | REQ_FUA;
|
||||
|
||||
/* should add to global list before clearing PAGECACHE status */
|
||||
if (f2fs_in_warm_node_list(sbi, page)) {
|
||||
if (f2fs_in_warm_node_list(sbi, folio)) {
|
||||
seq = f2fs_add_fsync_node_entry(sbi, page);
|
||||
if (seq_id)
|
||||
*seq_id = seq;
|
||||
|
|
|
|||
|
|
@ -3915,7 +3915,7 @@ static void do_write_page(struct f2fs_summary *sum, struct f2fs_io_info *fio)
|
|||
if (fscrypt_inode_uses_fs_layer_crypto(folio->mapping->host))
|
||||
fscrypt_finalize_bounce_page(&fio->encrypted_page);
|
||||
folio_end_writeback(folio);
|
||||
if (f2fs_in_warm_node_list(fio->sbi, fio->page))
|
||||
if (f2fs_in_warm_node_list(fio->sbi, folio))
|
||||
f2fs_del_fsync_node_entry(fio->sbi, fio->page);
|
||||
goto out;
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user