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

Commit 2300638b authored by Jan Kara's avatar Jan Kara Committed by Linus Torvalds
Browse files

mm: move clearing of page->mapping to page_cache_tree_delete()

Clearing of page->mapping makes sense in page_cache_tree_delete() as
well and it will help us with batching things this way.

Link: http://lkml.kernel.org/r/20171010151937.26984-6-jack@suse.cz


Signed-off-by: default avatarJan Kara <jack@suse.cz>
Acked-by: default avatarMel Gorman <mgorman@suse.de>
Reviewed-by: default avatarAndi Kleen <ak@linux.intel.com>
Cc: Dave Chinner <david@fromorbit.com>
Cc: Dave Hansen <dave.hansen@intel.com>
Cc: "Kirill A. Shutemov" <kirill.shutemov@linux.intel.com>
Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
parent 76253fbc
Loading
Loading
Loading
Loading
+3 −3
Original line number Diff line number Diff line
@@ -165,6 +165,9 @@ static void page_cache_tree_delete(struct address_space *mapping,
				     workingset_update_node, mapping);
	}

	page->mapping = NULL;
	/* Leave page->index set: truncation lookup relies upon it */

	if (shadow) {
		mapping->nrexceptional += nr;
		/*
@@ -250,9 +253,6 @@ void __delete_from_page_cache(struct page *page, void *shadow)
					     inode_to_wb(mapping->host));
	}
	page_cache_tree_delete(mapping, page, shadow);

	page->mapping = NULL;
	/* Leave page->index set: truncation lookup relies upon it */
}

static void page_cache_free_page(struct address_space *mapping,