diff options
-rw-r--r-- | fs/f2fs/data.c | 4 | ||||
-rw-r--r-- | fs/f2fs/dir.c | 2 | ||||
-rw-r--r-- | fs/f2fs/f2fs.h | 2 | ||||
-rw-r--r-- | fs/f2fs/inline.c | 2 | ||||
-rw-r--r-- | fs/f2fs/node.c | 6 |
5 files changed, 7 insertions, 9 deletions
diff --git a/fs/f2fs/data.c b/fs/f2fs/data.c index 5b760809eecc..6962491172a5 100644 --- a/fs/f2fs/data.c +++ b/fs/f2fs/data.c | |||
@@ -2697,13 +2697,13 @@ const struct address_space_operations f2fs_dblock_aops = { | |||
2697 | #endif | 2697 | #endif |
2698 | }; | 2698 | }; |
2699 | 2699 | ||
2700 | void f2fs_clear_radix_tree_dirty_tag(struct page *page) | 2700 | void f2fs_clear_page_cache_dirty_tag(struct page *page) |
2701 | { | 2701 | { |
2702 | struct address_space *mapping = page_mapping(page); | 2702 | struct address_space *mapping = page_mapping(page); |
2703 | unsigned long flags; | 2703 | unsigned long flags; |
2704 | 2704 | ||
2705 | xa_lock_irqsave(&mapping->i_pages, flags); | 2705 | xa_lock_irqsave(&mapping->i_pages, flags); |
2706 | radix_tree_tag_clear(&mapping->i_pages, page_index(page), | 2706 | __xa_clear_mark(&mapping->i_pages, page_index(page), |
2707 | PAGECACHE_TAG_DIRTY); | 2707 | PAGECACHE_TAG_DIRTY); |
2708 | xa_unlock_irqrestore(&mapping->i_pages, flags); | 2708 | xa_unlock_irqrestore(&mapping->i_pages, flags); |
2709 | } | 2709 | } |
diff --git a/fs/f2fs/dir.c b/fs/f2fs/dir.c index ecc3a4e2be96..01006085904a 100644 --- a/fs/f2fs/dir.c +++ b/fs/f2fs/dir.c | |||
@@ -729,7 +729,7 @@ void f2fs_delete_entry(struct f2fs_dir_entry *dentry, struct page *page, | |||
729 | 729 | ||
730 | if (bit_pos == NR_DENTRY_IN_BLOCK && | 730 | if (bit_pos == NR_DENTRY_IN_BLOCK && |
731 | !f2fs_truncate_hole(dir, page->index, page->index + 1)) { | 731 | !f2fs_truncate_hole(dir, page->index, page->index + 1)) { |
732 | f2fs_clear_radix_tree_dirty_tag(page); | 732 | f2fs_clear_page_cache_dirty_tag(page); |
733 | clear_page_dirty_for_io(page); | 733 | clear_page_dirty_for_io(page); |
734 | ClearPagePrivate(page); | 734 | ClearPagePrivate(page); |
735 | ClearPageUptodate(page); | 735 | ClearPageUptodate(page); |
diff --git a/fs/f2fs/f2fs.h b/fs/f2fs/f2fs.h index abf925664d9c..3ccb8ed84fae 100644 --- a/fs/f2fs/f2fs.h +++ b/fs/f2fs/f2fs.h | |||
@@ -3039,7 +3039,7 @@ int f2fs_migrate_page(struct address_space *mapping, struct page *newpage, | |||
3039 | struct page *page, enum migrate_mode mode); | 3039 | struct page *page, enum migrate_mode mode); |
3040 | #endif | 3040 | #endif |
3041 | bool f2fs_overwrite_io(struct inode *inode, loff_t pos, size_t len); | 3041 | bool f2fs_overwrite_io(struct inode *inode, loff_t pos, size_t len); |
3042 | void f2fs_clear_radix_tree_dirty_tag(struct page *page); | 3042 | void f2fs_clear_page_cache_dirty_tag(struct page *page); |
3043 | 3043 | ||
3044 | /* | 3044 | /* |
3045 | * gc.c | 3045 | * gc.c |
diff --git a/fs/f2fs/inline.c b/fs/f2fs/inline.c index 115dc219344b..3e0a630a0168 100644 --- a/fs/f2fs/inline.c +++ b/fs/f2fs/inline.c | |||
@@ -245,7 +245,7 @@ int f2fs_write_inline_data(struct inode *inode, struct page *page) | |||
245 | kunmap_atomic(src_addr); | 245 | kunmap_atomic(src_addr); |
246 | set_page_dirty(dn.inode_page); | 246 | set_page_dirty(dn.inode_page); |
247 | 247 | ||
248 | f2fs_clear_radix_tree_dirty_tag(page); | 248 | f2fs_clear_page_cache_dirty_tag(page); |
249 | 249 | ||
250 | set_inode_flag(inode, FI_APPEND_WRITE); | 250 | set_inode_flag(inode, FI_APPEND_WRITE); |
251 | set_inode_flag(inode, FI_DATA_EXIST); | 251 | set_inode_flag(inode, FI_DATA_EXIST); |
diff --git a/fs/f2fs/node.c b/fs/f2fs/node.c index dd2e45a661aa..0bae5eda056a 100644 --- a/fs/f2fs/node.c +++ b/fs/f2fs/node.c | |||
@@ -104,7 +104,7 @@ bool f2fs_available_free_memory(struct f2fs_sb_info *sbi, int type) | |||
104 | static void clear_node_page_dirty(struct page *page) | 104 | static void clear_node_page_dirty(struct page *page) |
105 | { | 105 | { |
106 | if (PageDirty(page)) { | 106 | if (PageDirty(page)) { |
107 | f2fs_clear_radix_tree_dirty_tag(page); | 107 | f2fs_clear_page_cache_dirty_tag(page); |
108 | clear_page_dirty_for_io(page); | 108 | clear_page_dirty_for_io(page); |
109 | dec_page_count(F2FS_P_SB(page), F2FS_DIRTY_NODES); | 109 | dec_page_count(F2FS_P_SB(page), F2FS_DIRTY_NODES); |
110 | } | 110 | } |
@@ -1307,9 +1307,7 @@ void f2fs_ra_node_page(struct f2fs_sb_info *sbi, nid_t nid) | |||
1307 | if (f2fs_check_nid_range(sbi, nid)) | 1307 | if (f2fs_check_nid_range(sbi, nid)) |
1308 | return; | 1308 | return; |
1309 | 1309 | ||
1310 | rcu_read_lock(); | 1310 | apage = xa_load(&NODE_MAPPING(sbi)->i_pages, nid); |
1311 | apage = radix_tree_lookup(&NODE_MAPPING(sbi)->i_pages, nid); | ||
1312 | rcu_read_unlock(); | ||
1313 | if (apage) | 1311 | if (apage) |
1314 | return; | 1312 | return; |
1315 | 1313 | ||