summaryrefslogtreecommitdiffstats
path: root/recipes-kernel/linux/linux-ti33x-psp-3.2/3.2.25/0013-mm-test-PageSwapBacked-in-lumpy-reclaim.patch
diff options
context:
space:
mode:
Diffstat (limited to 'recipes-kernel/linux/linux-ti33x-psp-3.2/3.2.25/0013-mm-test-PageSwapBacked-in-lumpy-reclaim.patch')
-rw-r--r--recipes-kernel/linux/linux-ti33x-psp-3.2/3.2.25/0013-mm-test-PageSwapBacked-in-lumpy-reclaim.patch42
1 files changed, 42 insertions, 0 deletions
diff --git a/recipes-kernel/linux/linux-ti33x-psp-3.2/3.2.25/0013-mm-test-PageSwapBacked-in-lumpy-reclaim.patch b/recipes-kernel/linux/linux-ti33x-psp-3.2/3.2.25/0013-mm-test-PageSwapBacked-in-lumpy-reclaim.patch
new file mode 100644
index 00000000..fe39de94
--- /dev/null
+++ b/recipes-kernel/linux/linux-ti33x-psp-3.2/3.2.25/0013-mm-test-PageSwapBacked-in-lumpy-reclaim.patch
@@ -0,0 +1,42 @@
1From 0b642dde6e6cd5dc940498c7cdb676fc56e4cdf4 Mon Sep 17 00:00:00 2001
2From: Hugh Dickins <hughd@google.com>
3Date: Tue, 10 Jan 2012 15:08:33 -0800
4Subject: [PATCH 13/73] mm: test PageSwapBacked in lumpy reclaim
5
6commit 043bcbe5ec51e0478ef2b44acef17193e01d7f70 upstream.
7
8Stable note: Not tracked in Bugzilla. There were reports of shared
9 mapped pages being unfairly reclaimed in comparison to older kernels.
10 This is being addressed over time. Even though the subject
11 refers to lumpy reclaim, it impacts compaction as well.
12
13Lumpy reclaim does well to stop at a PageAnon when there's no swap, but
14better is to stop at any PageSwapBacked, which includes shmem/tmpfs too.
15
16Signed-off-by: Hugh Dickins <hughd@google.com>
17Reviewed-by: KOSAKI Motohiro <kosaki.motohiro@jp.fujitsu.com>
18Reviewed-by: Minchan Kim <minchan@kernel.org>
19Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
20Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
21Signed-off-by: Mel Gorman <mgorman@suse.de>
22Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
23---
24 mm/vmscan.c | 2 +-
25 1 files changed, 1 insertions(+), 1 deletions(-)
26
27diff --git a/mm/vmscan.c b/mm/vmscan.c
28index ba763be..b9eaa06 100644
29--- a/mm/vmscan.c
30+++ b/mm/vmscan.c
31@@ -1215,7 +1215,7 @@ static unsigned long isolate_lru_pages(unsigned long nr_to_scan,
32 * anon page which don't already have a swap slot is
33 * pointless.
34 */
35- if (nr_swap_pages <= 0 && PageAnon(cursor_page) &&
36+ if (nr_swap_pages <= 0 && PageSwapBacked(cursor_page) &&
37 !PageSwapCache(cursor_page))
38 break;
39
40--
411.7.7.6
42