]> git.ipfire.org Git - thirdparty/kernel/stable-queue.git/commitdiff
3.12-stable patches
authorGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Tue, 7 Jan 2014 17:56:01 +0000 (09:56 -0800)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Tue, 7 Jan 2014 17:56:01 +0000 (09:56 -0800)
added patches:
sched-numa-skip-inaccessible-vmas.patch

queue-3.12/sched-numa-skip-inaccessible-vmas.patch [new file with mode: 0644]
queue-3.12/series

diff --git a/queue-3.12/sched-numa-skip-inaccessible-vmas.patch b/queue-3.12/sched-numa-skip-inaccessible-vmas.patch
new file mode 100644 (file)
index 0000000..8a6ef88
--- /dev/null
@@ -0,0 +1,40 @@
+From mgorman@suse.de  Tue Jan  7 09:52:24 2014
+From: Mel Gorman <mgorman@suse.de>
+Date: Tue,  7 Jan 2014 14:00:43 +0000
+Subject: sched: numa: skip inaccessible VMAs
+To: gregkh@linuxfoundation.org
+Cc: athorlton@sgi.com, riel@redhat.com, chegu_vinod@hp.com, Mel Gorman <mgorman@suse.de>, stable@vger.kernel.org
+Message-ID: <1389103248-17617-9-git-send-email-mgorman@suse.de>
+
+From: Mel Gorman <mgorman@suse.de>
+
+commit 3c67f474558748b604e247d92b55dfe89654c81d upstream.
+
+Inaccessible VMA should not be trapping NUMA hint faults. Skip them.
+
+Signed-off-by: Mel Gorman <mgorman@suse.de>
+Reviewed-by: Rik van Riel <riel@redhat.com>
+Cc: Alex Thorlton <athorlton@sgi.com>
+Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
+Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+---
+ kernel/sched/fair.c |    7 +++++++
+ 1 file changed, 7 insertions(+)
+
+--- a/kernel/sched/fair.c
++++ b/kernel/sched/fair.c
+@@ -974,6 +974,13 @@ void task_numa_work(struct callback_head
+               if (vma->vm_end - vma->vm_start < HPAGE_SIZE)
+                       continue;
++              /*
++               * Skip inaccessible VMAs to avoid any confusion between
++               * PROT_NONE and NUMA hinting ptes
++               */
++              if (!(vma->vm_flags & (VM_READ | VM_EXEC | VM_WRITE)))
++                      continue;
++
+               do {
+                       start = max(start, vma->vm_start);
+                       end = ALIGN(start + (pages << PAGE_SHIFT), HPAGE_SIZE);
index f5afc855a0b9b5ee87cee171164199a5bb485ea1..01526e250f5fdab80a34e908cba9f1c1b71018ba 100644 (file)
@@ -113,6 +113,7 @@ mm-numa-do-not-clear-pmd-during-pte-update-scan.patch
 mm-numa-do-not-clear-pte-for-pte_numa-update.patch
 mm-numa-ensure-anon_vma-is-locked-to-prevent-parallel-thp-splits.patch
 mm-numa-avoid-unnecessary-work-on-the-failure-path.patch
+sched-numa-skip-inaccessible-vmas.patch
 mm-mempolicy-correct-putback-method-for-isolate-pages-if-failed.patch
 mm-compaction-respect-ignore_skip_hint-in-update_pageblock_skip.patch
 mm-memory-failure.c-recheck-pagehuge-after-hugetlb-page-migrate-successfully.patch