|
@@ -176,8 +176,7 @@ static void page_cache_tree_delete(struct address_space *mapping,
|
|
|
/*
|
|
|
* Delete a page from the page cache and free it. Caller has to make
|
|
|
* sure the page is locked and that nobody else uses it - or that usage
|
|
|
- * is safe. The caller must hold the mapping's tree_lock and
|
|
|
- * lock_page_memcg().
|
|
|
+ * is safe. The caller must hold the mapping's tree_lock.
|
|
|
*/
|
|
|
void __delete_from_page_cache(struct page *page, void *shadow)
|
|
|
{
|
|
@@ -260,11 +259,9 @@ void delete_from_page_cache(struct page *page)
|
|
|
|
|
|
freepage = mapping->a_ops->freepage;
|
|
|
|
|
|
- lock_page_memcg(page);
|
|
|
spin_lock_irqsave(&mapping->tree_lock, flags);
|
|
|
__delete_from_page_cache(page, NULL);
|
|
|
spin_unlock_irqrestore(&mapping->tree_lock, flags);
|
|
|
- unlock_page_memcg(page);
|
|
|
|
|
|
if (freepage)
|
|
|
freepage(page);
|
|
@@ -557,7 +554,6 @@ int replace_page_cache_page(struct page *old, struct page *new, gfp_t gfp_mask)
|
|
|
new->mapping = mapping;
|
|
|
new->index = offset;
|
|
|
|
|
|
- lock_page_memcg(old);
|
|
|
spin_lock_irqsave(&mapping->tree_lock, flags);
|
|
|
__delete_from_page_cache(old, NULL);
|
|
|
error = radix_tree_insert(&mapping->page_tree, offset, new);
|
|
@@ -572,7 +568,6 @@ int replace_page_cache_page(struct page *old, struct page *new, gfp_t gfp_mask)
|
|
|
if (PageSwapBacked(new))
|
|
|
__inc_zone_page_state(new, NR_SHMEM);
|
|
|
spin_unlock_irqrestore(&mapping->tree_lock, flags);
|
|
|
- unlock_page_memcg(old);
|
|
|
mem_cgroup_migrate(old, new);
|
|
|
radix_tree_preload_end();
|
|
|
if (freepage)
|