All of lore.kernel.org
 help / color / mirror / Atom feed
diff for duplicates of <20160204131159.GA20399@node.shutemov.name>

diff --git a/a/1.txt b/N1/1.txt
index 0438404..ce43eb8 100644
--- a/a/1.txt
+++ b/N1/1.txt
@@ -27,3 +27,33 @@ On Thu, Jan 21, 2016 at 03:09:23PM +0300, Kirill A. Shutemov wrote:
 Well, that's embarrassing... :-/
 
 I forgot to commit one local change here. Sorry.
+
+>From 5b27991afe0e4018f2503593ade85d35ce045fbc Mon Sep 17 00:00:00 2001
+From: "Kirill A. Shutemov" <kirill.shutemov@linux.intel.com>
+Date: Thu, 4 Feb 2016 15:40:03 +0300
+Subject: [PATCH] thp: get deferred_split_scan() work again
+
+We really need to iterate over split_queue, not local empty list to get
+anything split from the shrinker.
+
+Signed-off-by: Kirill A. Shutemov <kirill.shutemov@linux.intel.com>
+Fixes: e3ae19535c66 ("thp: limit number of object to scan on deferred_split_scan()")
+---
+ mm/huge_memory.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/mm/huge_memory.c b/mm/huge_memory.c
+index 36c070167b71..08fc0ba2207e 100644
+--- a/mm/huge_memory.c
++++ b/mm/huge_memory.c
+@@ -3482,7 +3482,7 @@ static unsigned long deferred_split_scan(struct shrinker *shrink,
+ 
+ 	spin_lock_irqsave(&pgdata->split_queue_lock, flags);
+ 	/* Take pin on all head pages to avoid freeing them under us */
+-	list_for_each_safe(pos, next, &list) {
++	list_for_each_safe(pos, next, &pgdata->split_queue) {
+ 		page = list_entry((void *)pos, struct page, mapping);
+ 		page = compound_head(page);
+ 		if (get_page_unless_zero(page)) {
+-- 
+ Kirill A. Shutemov
diff --git a/a/content_digest b/N1/content_digest
index a1febd5..c17b55e 100644
--- a/a/content_digest
+++ b/N1/content_digest
@@ -52,6 +52,36 @@
  "\n"
  "Well, that's embarrassing... :-/\n"
  "\n"
- I forgot to commit one local change here. Sorry.
+ "I forgot to commit one local change here. Sorry.\n"
+ "\n"
+ ">From 5b27991afe0e4018f2503593ade85d35ce045fbc Mon Sep 17 00:00:00 2001\n"
+ "From: \"Kirill A. Shutemov\" <kirill.shutemov@linux.intel.com>\n"
+ "Date: Thu, 4 Feb 2016 15:40:03 +0300\n"
+ "Subject: [PATCH] thp: get deferred_split_scan() work again\n"
+ "\n"
+ "We really need to iterate over split_queue, not local empty list to get\n"
+ "anything split from the shrinker.\n"
+ "\n"
+ "Signed-off-by: Kirill A. Shutemov <kirill.shutemov@linux.intel.com>\n"
+ "Fixes: e3ae19535c66 (\"thp: limit number of object to scan on deferred_split_scan()\")\n"
+ "---\n"
+ " mm/huge_memory.c | 2 +-\n"
+ " 1 file changed, 1 insertion(+), 1 deletion(-)\n"
+ "\n"
+ "diff --git a/mm/huge_memory.c b/mm/huge_memory.c\n"
+ "index 36c070167b71..08fc0ba2207e 100644\n"
+ "--- a/mm/huge_memory.c\n"
+ "+++ b/mm/huge_memory.c\n"
+ "@@ -3482,7 +3482,7 @@ static unsigned long deferred_split_scan(struct shrinker *shrink,\n"
+ " \n"
+ " \tspin_lock_irqsave(&pgdata->split_queue_lock, flags);\n"
+ " \t/* Take pin on all head pages to avoid freeing them under us */\n"
+ "-\tlist_for_each_safe(pos, next, &list) {\n"
+ "+\tlist_for_each_safe(pos, next, &pgdata->split_queue) {\n"
+ " \t\tpage = list_entry((void *)pos, struct page, mapping);\n"
+ " \t\tpage = compound_head(page);\n"
+ " \t\tif (get_page_unless_zero(page)) {\n"
+ "-- \n"
+  Kirill A. Shutemov
 
-a9c959e7cd7adeeb0f62606dc43a7a1125d41674337c55ff071f99e2d827e312
+9ed0e76cfd25ff77e888e8fd61b987e85ed7ab4aea8ecd259757b4877dfd98cf

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.