All of lore.kernel.org
 help / color / mirror / Atom feed
diff for duplicates of <20131001011630.GA21009@lge.com>

diff --git a/a/1.txt b/N1/1.txt
index 30cb99c..1c075c7 100644
--- a/a/1.txt
+++ b/N1/1.txt
@@ -38,3 +38,31 @@ Please refer this and merge it.
 
 Thanks.
 ------------------------->8---------------------------------
+>From 9d2ead1800de6e1192824e11dafe68bed7b78cce Mon Sep 17 00:00:00 2001
+From: Joonsoo Kim <iamjoonsoo.kim@lge.com>
+Date: Mon, 30 Sep 2013 11:51:54 +0900
+Subject: [PATCH] mm, hugetlb: correct missing private flag clearing
+
+We should clear the page's private flag when returing the page to
+the hugepage pool. Otherwise, marked hugepage can be allocated to
+the user who tries to allocate the non-reserved hugepage. If this user
+fail to map this hugepage, he would try to return the page to the
+hugepage pool. Since this page has a private flag, resv_huge_pages would
+mistakenly increase. This patch fixes this situation.
+
+Signed-off-by: Joonsoo Kim <iamjoonsoo.kim@lge.com>
+
+diff --git a/mm/hugetlb.c b/mm/hugetlb.c
+index b49579c..691f226 100644
+--- a/mm/hugetlb.c
++++ b/mm/hugetlb.c
+@@ -653,6 +653,7 @@ static void free_huge_page(struct page *page)
+ 	BUG_ON(page_count(page));
+ 	BUG_ON(page_mapcount(page));
+ 	restore_reserve = PagePrivate(page);
++	ClearPagePrivate(page);
+ 
+ 	spin_lock(&hugetlb_lock);
+ 	hugetlb_cgroup_uncharge_page(hstate_index(h),
+-- 
+1.7.9.5
diff --git a/a/content_digest b/N1/content_digest
index d4588f8..216e6ce 100644
--- a/a/content_digest
+++ b/N1/content_digest
@@ -58,6 +58,34 @@
  "Please refer this and merge it.\n"
  "\n"
  "Thanks.\n"
- ------------------------->8---------------------------------
+ "------------------------->8---------------------------------\n"
+ ">From 9d2ead1800de6e1192824e11dafe68bed7b78cce Mon Sep 17 00:00:00 2001\n"
+ "From: Joonsoo Kim <iamjoonsoo.kim@lge.com>\n"
+ "Date: Mon, 30 Sep 2013 11:51:54 +0900\n"
+ "Subject: [PATCH] mm, hugetlb: correct missing private flag clearing\n"
+ "\n"
+ "We should clear the page's private flag when returing the page to\n"
+ "the hugepage pool. Otherwise, marked hugepage can be allocated to\n"
+ "the user who tries to allocate the non-reserved hugepage. If this user\n"
+ "fail to map this hugepage, he would try to return the page to the\n"
+ "hugepage pool. Since this page has a private flag, resv_huge_pages would\n"
+ "mistakenly increase. This patch fixes this situation.\n"
+ "\n"
+ "Signed-off-by: Joonsoo Kim <iamjoonsoo.kim@lge.com>\n"
+ "\n"
+ "diff --git a/mm/hugetlb.c b/mm/hugetlb.c\n"
+ "index b49579c..691f226 100644\n"
+ "--- a/mm/hugetlb.c\n"
+ "+++ b/mm/hugetlb.c\n"
+ "@@ -653,6 +653,7 @@ static void free_huge_page(struct page *page)\n"
+ " \tBUG_ON(page_count(page));\n"
+ " \tBUG_ON(page_mapcount(page));\n"
+ " \trestore_reserve = PagePrivate(page);\n"
+ "+\tClearPagePrivate(page);\n"
+ " \n"
+ " \tspin_lock(&hugetlb_lock);\n"
+ " \thugetlb_cgroup_uncharge_page(hstate_index(h),\n"
+ "-- \n"
+ 1.7.9.5
 
-b971e52cb8c1f7ecbb78b47b29fd68b2b9ea88baca516343993a294e8234f0c0
+51b673c30b424b02a9eee6d5316221527c2f592d31f5f495c2e01c342195d5b0

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.