Browse Source

memcg: page_cache_release not __free_page

There's nothing wrong with mem_cgroup_charge failure in do_wp_page and
do_anonymous page using __free_page, but it does look odd when nearby code
uses page_cache_release: use that instead (while turning a blind eye to
ancient inconsistencies of page_cache_release versus put_page).

Signed-off-by: Hugh Dickins <hugh@veritas.com>
Cc: David Rientjes <rientjes@google.com>
Acked-by: Balbir Singh <balbir@linux.vnet.ibm.com>
Acked-by: KAMEZAWA Hiroyuki <kamezawa.hiroyu@jp.fujitsu.com>
Cc: Hirokazu Takahashi <taka@valinux.co.jp>
Cc: YAMAMOTO Takashi <yamamoto@valinux.co.jp>
Cc: Paul Menage <menage@google.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Hugh Dickins 17 years ago
parent
commit
6dbf6d3bb9
1 changed files with 2 additions and 2 deletions
  1. 2 2
      mm/memory.c

+ 2 - 2
mm/memory.c

@@ -1711,7 +1711,7 @@ unlock:
 	}
 	}
 	return ret;
 	return ret;
 oom_free_new:
 oom_free_new:
-	__free_page(new_page);
+	page_cache_release(new_page);
 oom:
 oom:
 	if (old_page)
 	if (old_page)
 		page_cache_release(old_page);
 		page_cache_release(old_page);
@@ -2163,7 +2163,7 @@ release:
 	page_cache_release(page);
 	page_cache_release(page);
 	goto unlock;
 	goto unlock;
 oom_free_page:
 oom_free_page:
-	__free_page(page);
+	page_cache_release(page);
 oom:
 oom:
 	return VM_FAULT_OOM;
 	return VM_FAULT_OOM;
 }
 }