All of lore.kernel.org
 help / color / mirror / Atom feed
From: dave@linux.vnet.ibm.com (Dave Hansen)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH 01/10] mm: Introduce the memory regions data structure
Date: Tue, 31 May 2011 10:34:20 -0700	[thread overview]
Message-ID: <1306863260.15490.35.camel@nimitz> (raw)
In-Reply-To: <20110529081618.GC8333@in.ibm.com>

On Sun, 2011-05-29 at 13:46 +0530, Ankita Garg wrote:
> > It's worth noting that we already do targeted reclaim on boundaries
> > other than zones.  The lumpy reclaim and memory compaction logically do
> > the same thing.  So, it's at least possible to do this without having
> > the global LRU designed around the way you want to reclaim.
> >
> My understanding maybe incorrect, but doesn't both lumpy reclaim and
> memory compaction still work under zone boundary ? While trying to free
> up higher order pages, lumpy reclaim checks to ensure that pages that
> are selected do not cross zone boundary. Further, compaction walks
> through the pages in a zone and tries to re-arrange them.

I'm asserting that we don't need memory regions in the

	pgdat->regions[]->zones[]

layout to do what you're asking for.

Lumpy reclaim is limited to a zone because it's trying to satisfy and
allocation request that came in for *THAT* *ZONE*.  It's useless to go
clear out other zones.  In your case, you don't care about zone
boundaries: you want to reclaim things regardless.

There was a "cma: Contiguous Memory Allocator added" patch posted a bit
ago to linux-mm at .  You might want to take a look at it for some
inspiration.

I think you also need to clearly establish here why any memory that
you're going to want to power off can't use (or shouldn't use)
ZONE_MOVABLE.  It seems a bit silly to have it there, and ignore it for
such a similar use case.  Memory hot-remove and power-down are not
horrifically different beasts.

BTW, that's probably something else to add to your list: make sure
mem_map[]s for memory in a region get allocated *in* that region. 

-- Dave

WARNING: multiple messages have this Message-ID (diff)
From: Dave Hansen <dave@linux.vnet.ibm.com>
To: Ankita Garg <ankita@in.ibm.com>
Cc: svaidy@linux.vnet.ibm.com, linux-arm-kernel@lists.infradead.org,
	linux-mm@kvack.org, linux-kernel@vger.kernel.org,
	linux-pm@lists.linux-foundation.org, thomas.abraham@linaro.org
Subject: Re: [PATCH 01/10] mm: Introduce the memory regions data structure
Date: Tue, 31 May 2011 10:34:20 -0700	[thread overview]
Message-ID: <1306863260.15490.35.camel@nimitz> (raw)
In-Reply-To: <20110529081618.GC8333@in.ibm.com>

On Sun, 2011-05-29 at 13:46 +0530, Ankita Garg wrote:
> > It's worth noting that we already do targeted reclaim on boundaries
> > other than zones.  The lumpy reclaim and memory compaction logically do
> > the same thing.  So, it's at least possible to do this without having
> > the global LRU designed around the way you want to reclaim.
> >
> My understanding maybe incorrect, but doesn't both lumpy reclaim and
> memory compaction still work under zone boundary ? While trying to free
> up higher order pages, lumpy reclaim checks to ensure that pages that
> are selected do not cross zone boundary. Further, compaction walks
> through the pages in a zone and tries to re-arrange them.

I'm asserting that we don't need memory regions in the

	pgdat->regions[]->zones[]

layout to do what you're asking for.

Lumpy reclaim is limited to a zone because it's trying to satisfy and
allocation request that came in for *THAT* *ZONE*.  It's useless to go
clear out other zones.  In your case, you don't care about zone
boundaries: you want to reclaim things regardless.

There was a "cma: Contiguous Memory Allocator added" patch posted a bit
ago to linux-mm@.  You might want to take a look at it for some
inspiration.

I think you also need to clearly establish here why any memory that
you're going to want to power off can't use (or shouldn't use)
ZONE_MOVABLE.  It seems a bit silly to have it there, and ignore it for
such a similar use case.  Memory hot-remove and power-down are not
horrifically different beasts.

BTW, that's probably something else to add to your list: make sure
mem_map[]s for memory in a region get allocated *in* that region. 

-- Dave


WARNING: multiple messages have this Message-ID (diff)
From: Dave Hansen <dave@linux.vnet.ibm.com>
To: Ankita Garg <ankita@in.ibm.com>
Cc: svaidy@linux.vnet.ibm.com, linux-arm-kernel@lists.infradead.org,
	linux-mm@kvack.org, linux-kernel@vger.kernel.org,
	linux-pm@lists.linux-foundation.org, thomas.abraham@linaro.org
Subject: Re: [PATCH 01/10] mm: Introduce the memory regions data structure
Date: Tue, 31 May 2011 10:34:20 -0700	[thread overview]
Message-ID: <1306863260.15490.35.camel@nimitz> (raw)
In-Reply-To: <20110529081618.GC8333@in.ibm.com>

On Sun, 2011-05-29 at 13:46 +0530, Ankita Garg wrote:
> > It's worth noting that we already do targeted reclaim on boundaries
> > other than zones.  The lumpy reclaim and memory compaction logically do
> > the same thing.  So, it's at least possible to do this without having
> > the global LRU designed around the way you want to reclaim.
> >
> My understanding maybe incorrect, but doesn't both lumpy reclaim and
> memory compaction still work under zone boundary ? While trying to free
> up higher order pages, lumpy reclaim checks to ensure that pages that
> are selected do not cross zone boundary. Further, compaction walks
> through the pages in a zone and tries to re-arrange them.

I'm asserting that we don't need memory regions in the

	pgdat->regions[]->zones[]

layout to do what you're asking for.

Lumpy reclaim is limited to a zone because it's trying to satisfy and
allocation request that came in for *THAT* *ZONE*.  It's useless to go
clear out other zones.  In your case, you don't care about zone
boundaries: you want to reclaim things regardless.

There was a "cma: Contiguous Memory Allocator added" patch posted a bit
ago to linux-mm@.  You might want to take a look at it for some
inspiration.

I think you also need to clearly establish here why any memory that
you're going to want to power off can't use (or shouldn't use)
ZONE_MOVABLE.  It seems a bit silly to have it there, and ignore it for
such a similar use case.  Memory hot-remove and power-down are not
horrifically different beasts.

BTW, that's probably something else to add to your list: make sure
mem_map[]s for memory in a region get allocated *in* that region. 

-- Dave

--
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/ .
Fight unfair telecom internet charges in Canada: sign http://stopthemeter.ca/
Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>

  parent reply	other threads:[~2011-05-31 17:34 UTC|newest]

Thread overview: 284+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-05-27 12:31 [PATCH 00/10] mm: Linux VM Infrastructure to support Memory Power Management Ankita Garg
2011-05-27 12:31 ` Ankita Garg
2011-05-27 12:31 ` Ankita Garg
2011-05-27 12:31 ` [PATCH 01/10] mm: Introduce the memory regions data structure Ankita Garg
2011-05-27 12:31   ` Ankita Garg
2011-05-27 12:31   ` Ankita Garg
2011-05-27 15:30   ` Dave Hansen
2011-05-27 15:30   ` Dave Hansen
2011-05-27 15:30   ` Dave Hansen
2011-05-27 15:30     ` Dave Hansen
2011-05-27 15:30     ` Dave Hansen
2011-05-27 18:20     ` Vaidyanathan Srinivasan
2011-05-27 18:20       ` Vaidyanathan Srinivasan
2011-05-27 18:20       ` Vaidyanathan Srinivasan
2011-05-27 21:31       ` Dave Hansen
2011-05-27 21:31         ` Dave Hansen
2011-05-27 21:31         ` Dave Hansen
2011-05-29  8:16         ` Ankita Garg
2011-05-29  8:16         ` Ankita Garg
2011-05-29  8:16           ` Ankita Garg
2011-05-29  8:16           ` Ankita Garg
2011-05-31 17:34           ` Dave Hansen
2011-05-31 17:34           ` Dave Hansen
2011-05-31 17:34           ` Dave Hansen [this message]
2011-05-31 17:34             ` Dave Hansen
2011-05-31 17:34             ` Dave Hansen
2011-06-02  8:54             ` Ankita Garg
2011-06-02  8:54               ` Ankita Garg
2011-06-02  8:54               ` Ankita Garg
2011-06-02  8:54             ` Ankita Garg
2011-05-27 21:31       ` Dave Hansen
2011-05-27 21:31       ` Dave Hansen
2011-05-27 21:31       ` Dave Hansen
2011-05-27 18:20     ` Vaidyanathan Srinivasan
2011-05-27 15:30   ` Dave Hansen
2011-05-27 12:31 ` Ankita Garg
2011-05-27 12:31 ` [PATCH 02/10] mm: Helper routines Ankita Garg
2011-05-27 12:31   ` Ankita Garg
2011-05-27 12:31   ` Ankita Garg
2011-05-27 12:31 ` Ankita Garg
2011-05-27 12:31 ` [PATCH 03/10] mm: Init zones inside memory regions Ankita Garg
2011-05-27 12:31   ` Ankita Garg
2011-05-27 12:31   ` Ankita Garg
2011-05-27 12:31 ` Ankita Garg
2011-05-27 12:31 ` [PATCH 04/10] mm: Refer to zones from " Ankita Garg
2011-05-27 12:31 ` Ankita Garg
2011-05-27 12:31   ` Ankita Garg
2011-05-27 12:31   ` Ankita Garg
2011-05-27 12:31 ` [PATCH 05/10] mm: Create zonelists Ankita Garg
2011-05-27 12:31   ` Ankita Garg
2011-05-27 12:31   ` Ankita Garg
2011-05-27 12:31 ` Ankita Garg
2011-05-27 12:31 ` [PATCH 06/10] mm: Verify zonelists Ankita Garg
2011-05-27 12:31 ` Ankita Garg
2011-05-27 12:31   ` Ankita Garg
2011-05-27 12:31   ` Ankita Garg
2011-05-27 12:31 ` [PATCH 07/10] mm: Modify vmstat Ankita Garg
2011-05-27 12:31 ` Ankita Garg
2011-05-27 12:31   ` Ankita Garg
2011-05-27 12:31   ` Ankita Garg
2011-05-27 12:31 ` [PATCH 08/10] mm: Modify vmscan Ankita Garg
2011-05-27 12:31 ` Ankita Garg
2011-05-27 12:31   ` Ankita Garg
2011-05-27 12:31   ` Ankita Garg
2011-05-27 12:31 ` [PATCH 09/10] mm: Reflect memory region changes in zoneinfo Ankita Garg
2011-05-27 12:31   ` Ankita Garg
2011-05-27 12:31   ` Ankita Garg
2011-05-27 12:31 ` Ankita Garg
2011-05-27 12:31 ` [PATCH 10/10] mm: Create memory regions at boot-up Ankita Garg
2011-05-27 12:31 ` Ankita Garg
2011-05-27 12:31   ` Ankita Garg
2011-05-27 12:31   ` Ankita Garg
2011-05-28 14:39   ` Jean-Christophe PLAGNIOL-VILLARD
2011-05-28 14:39   ` Jean-Christophe PLAGNIOL-VILLARD
2011-05-28 14:39     ` Jean-Christophe PLAGNIOL-VILLARD
2011-05-28 14:39     ` Jean-Christophe PLAGNIOL-VILLARD
2011-05-28  7:56 ` [PATCH 00/10] mm: Linux VM Infrastructure to support Memory Power Management Andrew Morton
2011-05-28  7:56   ` Andrew Morton
2011-05-28  7:56   ` Andrew Morton
2011-05-28 13:16   ` Ankita Garg
2011-05-28 13:16   ` Ankita Garg
2011-05-28 13:16     ` Ankita Garg
2011-05-28 13:16     ` Ankita Garg
2011-06-09 18:52   ` Paul E. McKenney
2011-06-09 18:52     ` Paul E. McKenney
2011-06-09 18:52     ` Paul E. McKenney
2011-06-10  0:51     ` Kyungmin Park
2011-06-10  0:51     ` Kyungmin Park
2011-06-10  0:51       ` Kyungmin Park
2011-06-10  0:51       ` Kyungmin Park
2011-06-10 15:11       ` Paul E. McKenney
2011-06-10 15:11       ` Paul E. McKenney
2011-06-10 15:11         ` Paul E. McKenney
2011-06-10 15:11         ` Paul E. McKenney
2011-06-10 15:59         ` Matthew Garrett
2011-06-10 15:59         ` Matthew Garrett
2011-06-10 15:59           ` Matthew Garrett
2011-06-10 15:59           ` Matthew Garrett
2011-06-10 16:55           ` Paul E. McKenney
2011-06-10 16:55             ` Paul E. McKenney
2011-06-10 16:55             ` Paul E. McKenney
2011-06-10 17:05             ` Matthew Garrett
2011-06-10 17:05             ` Matthew Garrett
2011-06-10 17:05               ` Matthew Garrett
2011-06-10 17:05               ` Matthew Garrett
2011-06-10 17:19               ` Paul E. McKenney
2011-06-10 17:19               ` Paul E. McKenney
2011-06-10 17:19                 ` Paul E. McKenney
2011-06-10 17:19                 ` Paul E. McKenney
2011-06-10 17:23                 ` Matthew Garrett
2011-06-10 17:23                 ` Matthew Garrett
2011-06-10 17:23                   ` Matthew Garrett
2011-06-10 17:23                   ` Matthew Garrett
2011-06-10 17:52                   ` Paul E. McKenney
2011-06-10 17:52                     ` Paul E. McKenney
2011-06-10 17:52                     ` Paul E. McKenney
2011-06-10 18:08                     ` Matthew Garrett
2011-06-10 18:08                       ` Matthew Garrett
2011-06-10 18:08                       ` Matthew Garrett
2011-06-10 18:47                       ` Paul E. McKenney
2011-06-10 18:47                       ` Paul E. McKenney
2011-06-10 18:47                         ` Paul E. McKenney
2011-06-10 18:47                         ` Paul E. McKenney
2011-06-10 19:23                         ` Matthew Garrett
2011-06-10 19:23                         ` Matthew Garrett
2011-06-10 19:23                           ` Matthew Garrett
2011-06-10 19:23                           ` Matthew Garrett
2011-06-10 19:37                           ` Paul E. McKenney
2011-06-10 19:37                             ` Paul E. McKenney
2011-06-10 19:37                             ` Paul E. McKenney
2011-06-10 20:12                             ` Matthew Garrett
2011-06-10 20:12                             ` Matthew Garrett
2011-06-10 20:12                               ` Matthew Garrett
2011-06-10 20:12                               ` Matthew Garrett
2011-06-11  3:02                             ` Arjan van de Ven
2011-06-11  3:02                               ` Arjan van de Ven
2011-06-11  3:02                               ` Arjan van de Ven
2011-06-11 17:06                               ` Paul E. McKenney
2011-06-11 17:06                                 ` Paul E. McKenney
2011-06-11 17:06                                 ` Paul E. McKenney
2011-06-11 17:26                                 ` Arjan van de Ven
2011-06-11 17:26                                 ` Arjan van de Ven
2011-06-11 17:26                                   ` Arjan van de Ven
2011-06-11 17:26                                   ` Arjan van de Ven
2011-06-12 23:07                                   ` Paul E. McKenney
2011-06-12 23:07                                     ` Paul E. McKenney
2011-06-12 23:07                                     ` Paul E. McKenney
2011-06-13 14:28                                     ` Arjan van de Ven
2011-06-13 14:28                                       ` Arjan van de Ven
2011-06-13 14:28                                       ` Arjan van de Ven
2011-06-13 23:04                                       ` Paul E. McKenney
2011-06-13 23:04                                         ` Paul E. McKenney
2011-06-13 23:04                                         ` Paul E. McKenney
2011-06-13 23:04                                       ` Paul E. McKenney
2011-06-13 14:28                                     ` Arjan van de Ven
2011-06-12 23:07                                   ` Paul E. McKenney
2011-06-11 17:06                               ` Paul E. McKenney
2011-06-14  8:51                               ` Ankita Garg
2011-06-14  8:51                                 ` Ankita Garg
2011-06-14  8:51                                 ` Ankita Garg
2011-06-14  8:51                               ` Ankita Garg
2011-06-15 16:53                               ` Ankita Garg
2011-06-15 16:53                               ` Ankita Garg
2011-06-15 16:53                                 ` Ankita Garg
2011-06-15 16:53                                 ` Ankita Garg
2011-06-18  4:08                                 ` Arjan van de Ven
2011-06-18  4:08                                 ` Arjan van de Ven
2011-06-18  4:08                                   ` Arjan van de Ven
2011-06-18  4:08                                   ` Arjan van de Ven
2011-06-11  3:02                             ` Arjan van de Ven
2011-06-10 19:37                           ` Paul E. McKenney
2011-06-10 18:08                     ` Matthew Garrett
2011-06-10 17:52                   ` Paul E. McKenney
2011-06-10 17:33                 ` Ankita Garg
2011-06-10 17:33                   ` Ankita Garg
2011-06-10 17:33                   ` Ankita Garg
2011-06-11 17:08                   ` Paul E. McKenney
2011-06-11 17:08                     ` Paul E. McKenney
2011-06-11 17:08                     ` Paul E. McKenney
2011-06-11 17:08                   ` Paul E. McKenney
2011-06-10 17:33                 ` Ankita Garg
2011-06-10 16:55           ` Paul E. McKenney
2011-06-09 18:52   ` Paul E. McKenney
2011-07-12  5:31   ` amit kachhap
2011-07-12  5:31   ` amit kachhap
2011-07-12  5:31     ` amit kachhap
2011-07-12  5:31     ` amit kachhap
2011-05-28  7:56 ` Andrew Morton
2011-06-13  4:47 ` KAMEZAWA Hiroyuki
2011-06-13  4:47   ` KAMEZAWA Hiroyuki
2011-06-13  4:47   ` KAMEZAWA Hiroyuki
2011-06-16  4:20   ` Ankita Garg
2011-06-16  4:20   ` Ankita Garg
2011-06-16  4:20     ` Ankita Garg
2011-06-16  4:20     ` Ankita Garg
2011-06-16  9:12     ` KAMEZAWA Hiroyuki
2011-06-16  9:12     ` KAMEZAWA Hiroyuki
2011-06-16  9:12       ` KAMEZAWA Hiroyuki
2011-06-16  9:12       ` KAMEZAWA Hiroyuki
2011-06-17 15:28       ` Ankita Garg
2011-06-17 15:28         ` Ankita Garg
2011-06-17 15:28         ` Ankita Garg
2011-06-19 23:53         ` KAMEZAWA Hiroyuki
2011-06-19 23:53         ` KAMEZAWA Hiroyuki
2011-06-19 23:53           ` KAMEZAWA Hiroyuki
2011-06-19 23:53           ` KAMEZAWA Hiroyuki
2011-06-17 15:28       ` Ankita Garg
2011-06-16 16:04     ` Dave Hansen
2011-06-16 16:04     ` Dave Hansen
2011-06-16 16:04       ` Dave Hansen
2011-06-16 16:04       ` Dave Hansen
2011-06-17 10:03       ` Ankita Garg
2011-06-17 10:03       ` Ankita Garg
2011-06-17 10:03         ` Ankita Garg
2011-06-17 10:03         ` Ankita Garg
2011-06-13  4:47 ` KAMEZAWA Hiroyuki
2011-06-29 13:00 ` Ankita Garg
2011-06-29 13:00 ` Ankita Garg
2011-06-29 13:00   ` Ankita Garg
2011-06-29 13:00   ` Ankita Garg
2011-06-29 17:06   ` Dave Hansen
2011-06-29 17:06     ` Dave Hansen
2011-06-29 17:06     ` Dave Hansen
2011-06-29 17:42     ` Ankita Garg
2011-06-29 17:42       ` Ankita Garg
2011-06-29 17:42       ` Ankita Garg
2011-06-29 17:59       ` Dave Hansen
2011-06-29 17:59       ` Dave Hansen
2011-06-29 17:59         ` Dave Hansen
2011-06-29 17:59         ` Dave Hansen
2011-06-29 18:17         ` Vaidyanathan Srinivasan
2011-06-29 18:17           ` Vaidyanathan Srinivasan
2011-06-29 18:17           ` Vaidyanathan Srinivasan
2011-06-30  4:37           ` Ankita Garg
2011-06-30  4:37           ` Ankita Garg
2011-06-30  4:37             ` Ankita Garg
2011-06-30  4:37             ` Ankita Garg
2011-06-29 18:17         ` Vaidyanathan Srinivasan
2011-06-29 20:11         ` Andi Kleen
2011-06-29 20:11         ` Andi Kleen
2011-06-29 20:11           ` Andi Kleen
2011-06-29 20:11           ` Andi Kleen
2011-06-30  5:11           ` Ankita Garg
2011-06-30  5:11             ` Ankita Garg
2011-06-30  5:11             ` Ankita Garg
2011-06-30  5:11           ` Ankita Garg
2011-06-29 17:42     ` Ankita Garg
2011-06-29 18:07     ` Vaidyanathan Srinivasan
2011-06-29 18:07     ` Vaidyanathan Srinivasan
2011-06-29 18:07       ` Vaidyanathan Srinivasan
2011-06-29 18:07       ` Vaidyanathan Srinivasan
2011-06-29 17:06   ` Dave Hansen
2011-07-06  8:45   ` Pekka Enberg
2011-07-06  8:45   ` Pekka Enberg
2011-07-06  8:45     ` Pekka Enberg
2011-07-06  8:45     ` Pekka Enberg
2011-07-06  9:01     ` Pekka Enberg
2011-07-06  9:01     ` Pekka Enberg
2011-07-06  9:01       ` Pekka Enberg
2011-07-06  9:01       ` Pekka Enberg
2011-07-06 16:50       ` Vaidyanathan Srinivasan
2011-07-06 16:50       ` Vaidyanathan Srinivasan
2011-07-06 16:50         ` Vaidyanathan Srinivasan
2011-07-06 16:50         ` Vaidyanathan Srinivasan
2011-07-06 16:41     ` Vaidyanathan Srinivasan
2011-07-06 16:41       ` Vaidyanathan Srinivasan
2011-07-06 16:41       ` Vaidyanathan Srinivasan
2011-07-06 16:41     ` Vaidyanathan Srinivasan
2011-07-06 20:20     ` david
2011-07-06 20:20     ` david at lang.hm
2011-07-06 20:20       ` david
2011-07-06 20:20       ` david
2011-07-07  4:54       ` Ankita Garg
2011-07-07  4:54         ` Ankita Garg
2011-07-07  4:54         ` Ankita Garg
2011-07-07  4:54       ` Ankita Garg
2011-07-07 18:00       ` Pekka Enberg
2011-07-07 18:00         ` Pekka Enberg
2011-07-07 18:00         ` Pekka Enberg
2011-07-08  1:32         ` david
2011-07-08  1:32         ` david at lang.hm
2011-07-08  1:32           ` david
2011-07-08  1:32           ` david
2011-07-07 18:00       ` Pekka Enberg

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=1306863260.15490.35.camel@nimitz \
    --to=dave@linux.vnet.ibm.com \
    --cc=linux-arm-kernel@lists.infradead.org \
    /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 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.