ACK: [Trusty][SRU][PATCH] mm: numa: do not automatically migrate KSM pages

Brad Figg brad.figg at canonical.com
Thu Jul 24 17:28:09 UTC 2014


On 07/24/2014 10:09 AM, Chris J Arges wrote:
> From: Mel Gorman <mgorman at suse.de>
> 
> BugLink: http://bugs.launchpad.net/bugs/1346917
> 
> KSM pages can be shared between tasks that are not necessarily related
> to each other from a NUMA perspective.  This patch causes those pages to
> be ignored by automatic NUMA balancing so they do not migrate and do not
> cause unrelated tasks to be grouped together.
> 
> Signed-off-by: Mel Gorman <mgorman at suse.de>
> Reviewed-by: Rik van Riel <riel at redhat.com>
> Cc: Alex Thorlton <athorlton at sgi.com>
> Signed-off-by: Andrew Morton <akpm at linux-foundation.org>
> Signed-off-by: Linus Torvalds <torvalds at linux-foundation.org>
> (cherry picked from commit 64a9a34e22896dad430e21a28ad8cb00a756fefc)
> Signed-off-by: Chris J Arges <chris.j.arges at canonical.com>
> ---
>  mm/mprotect.c | 3 ++-
>  1 file changed, 2 insertions(+), 1 deletion(-)
> 
> diff --git a/mm/mprotect.c b/mm/mprotect.c
> index bb53a65..7332c17 100644
> --- a/mm/mprotect.c
> +++ b/mm/mprotect.c
> @@ -23,6 +23,7 @@
>  #include <linux/mmu_notifier.h>
>  #include <linux/migrate.h>
>  #include <linux/perf_event.h>
> +#include <linux/ksm.h>
>  #include <asm/uaccess.h>
>  #include <asm/pgtable.h>
>  #include <asm/cacheflush.h>
> @@ -63,7 +64,7 @@ static unsigned long change_pte_range(struct vm_area_struct *vma, pmd_t *pmd,
>  
>  				ptent = *pte;
>  				page = vm_normal_page(vma, addr, oldpte);
> -				if (page) {
> +				if (page && !PageKsm(page)) {
>  					if (!pte_numa(oldpte)) {
>  						ptent = pte_mknuma(ptent);
>  						set_pte_at(mm, addr, pte, ptent);
> 


-- 
Brad Figg brad.figg at canonical.com http://www.canonical.com




More information about the kernel-team mailing list