linux-mm.kvack.org archive mirror
 help / color / mirror / Atom feed
From: David Rientjes <rientjes@google.com>
To: Mel Gorman <mel@csn.ul.ie>
Cc: Andrea Arcangeli <aarcange@redhat.com>,
	Christoph Lameter <cl@linux-foundation.org>,
	Adam Litke <agl@us.ibm.com>, Avi Kivity <avi@redhat.com>,
	linux-kernel@vger.kernel.org, linux-mm@kvack.org
Subject: Re: [PATCH 1/7] Allow CONFIG_MIGRATION to be set without CONFIG_NUMA
Date: Thu, 7 Jan 2010 13:46:03 -0800 (PST)	[thread overview]
Message-ID: <alpine.DEB.2.00.1001071331520.23894@chino.kir.corp.google.com> (raw)
In-Reply-To: <1262795169-9095-2-git-send-email-mel@csn.ul.ie>

On Wed, 6 Jan 2010, Mel Gorman wrote:

> CONFIG_MIGRATION currently depends on CONFIG_NUMA. The current users of
> page migration such as sys_move_pages(), sys_migrate_pages() and cpuset
> process migration are ordinarily only beneficial on NUMA.
> 
> As memory compaction will operate within a zone and is useful on both NUMA
> and non-NUMA systems, this patch allows CONFIG_MIGRATION to be set if the
> user selects CONFIG_COMPACTION as an option.
> 
> TODO
>   o After this patch is applied, the migration core is available but it
>     also makes NUMA-specific features available. This is too much
>     exposure so revisit this.
> 

CONFIG_MIGRATION is no longer strictly dependent on CONFIG_NUMA since 
ARCH_ENABLE_MEMORY_HOTREMOVE has allowed it to be configured for UMA 
machines.  All strictly NUMA features in the migration core should be 
isolated under its #ifdef CONFIG_NUMA (sys_move_pages()) in mm/migrate.c 
or by simply not compiling mm/mempolicy.c (sys_migrate_pages()), so this 
patch looks fine as is (although the "help" text for CONFIG_MIGRATION 
could be updated to reflect that it's useful for both memory hot-remove 
and now compaction).

> Signed-off-by: Mel Gorman <mel@csn.ul.ie>
> ---
>  mm/Kconfig |   12 +++++++++++-
>  1 files changed, 11 insertions(+), 1 deletions(-)
> 
> diff --git a/mm/Kconfig b/mm/Kconfig
> index 17b8947..1d8e2b2 100644
> --- a/mm/Kconfig
> +++ b/mm/Kconfig
> @@ -168,12 +168,22 @@ config SPLIT_PTLOCK_CPUS
>  	default "4"
>  
>  #
> +# support for memory compaction
> +config COMPACTION
> +	bool "Allow for memory compaction"
> +	def_bool y
> +	select MIGRATION
> +	depends on EXPERIMENTAL && HUGETLBFS
> +	help
> +	  Allows the compaction of memory for the allocation of huge pages.
> +
> +#
>  # support for page migration
>  #
>  config MIGRATION
>  	bool "Page migration"
>  	def_bool y
> -	depends on NUMA || ARCH_ENABLE_MEMORY_HOTREMOVE
> +	depends on NUMA || ARCH_ENABLE_MEMORY_HOTREMOVE || COMPACTION
>  	help
>  	  Allows the migration of the physical location of pages of processes
>  	  while the virtual addresses are not changed. This is useful for

--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@kvack.org.  For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>

  reply	other threads:[~2010-01-07 21:46 UTC|newest]

Thread overview: 36+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-01-06 16:26 [RFC-PATCH 0/7] Memory Compaction v1 Mel Gorman
2010-01-06 16:26 ` [PATCH 1/7] Allow CONFIG_MIGRATION to be set without CONFIG_NUMA Mel Gorman
2010-01-07 21:46   ` David Rientjes [this message]
2010-01-07 22:04     ` Christoph Lameter
2010-01-19 13:00     ` Mel Gorman
2010-01-06 16:26 ` [PATCH 2/7] Export unusable free space index via /proc/pagetypeinfo Mel Gorman
2010-01-06 17:10   ` Adam Litke
2010-01-06 17:29     ` Mel Gorman
2010-01-06 23:21   ` Tim Pepper
2010-01-28 22:27   ` David Rientjes
2010-02-05 10:23     ` Mel Gorman
2010-02-05 21:40       ` David Rientjes
2010-02-08 12:10         ` Mel Gorman
2010-01-06 16:26 ` [PATCH 3/7] Export fragmentation " Mel Gorman
2010-01-06 16:26 ` [PATCH 4/7] Memory compaction core Mel Gorman
2010-01-06 17:50   ` Mel Gorman
2010-01-06 18:22     ` Mel Gorman
2010-01-06 21:37   ` Andi Kleen
2010-01-06 22:07     ` Mel Gorman
2010-01-06 16:26 ` [PATCH 5/7] Add /proc trigger for memory compaction Mel Gorman
2010-01-07 22:00   ` David Rientjes
2010-01-13 23:23     ` David Rientjes
2010-01-20  9:48       ` Mel Gorman
2010-01-20  9:48     ` Mel Gorman
2010-01-20 18:12       ` Christoph Lameter
2010-01-20 20:53         ` Mel Gorman
2010-01-20 20:48       ` David Rientjes
2010-01-21 14:09         ` Mel Gorman
2010-01-21 23:34           ` David Rientjes
2010-01-06 16:26 ` [PATCH 6/7] Direct compact when a high-order allocation fails Mel Gorman
2010-01-06 16:26 ` [PATCH 7/7] Do not compact within a preferred zone after a compaction failure Mel Gorman
2010-01-13 23:28   ` David Rientjes
2010-01-20  9:51     ` Mel Gorman
2010-01-21  3:12 ` [RFC-PATCH 0/7] Memory Compaction v1 KOSAKI Motohiro
2010-01-21 10:11   ` Mel Gorman
2010-01-22  0:16     ` KOSAKI Motohiro

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=alpine.DEB.2.00.1001071331520.23894@chino.kir.corp.google.com \
    --to=rientjes@google.com \
    --cc=aarcange@redhat.com \
    --cc=agl@us.ibm.com \
    --cc=avi@redhat.com \
    --cc=cl@linux-foundation.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-mm@kvack.org \
    --cc=mel@csn.ul.ie \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox