[PATCH 00/10] mm: Linux VM Infrastructure to support Memory Power Management

david at lang.hm david at lang.hm
Thu Jul 7 21:32:17 EDT 2011


On Thu, 7 Jul 2011, Pekka Enberg wrote:

> On Wed, 6 Jul 2011, Pekka Enberg wrote:
>>> Why does the allocator need to know about address boundaries? Why
>>> isn't it enough to make the page allocator and reclaim policies favor 
>>> using
>>> memory from lower addresses as aggressively as possible? That'd mean
>>> we'd favor the first memory banks and could keep the remaining ones
>>> powered off as much as possible.
>>> 
>>> IOW, why do we need to support scenarios such as this:
>>>
>>>   bank 0     bank 1   bank 2    bank3
>>> | online  | offline | online  | offline |
>> 
> On Wed, 6 Jul 2011, david at lang.hm wrote:
>> I believe that there are memory allocations that cannot be moved after they 
>> are made (think about regions allocated to DMA from hardware where the 
>> hardware has already been given the address space to DMA into)
>> 
>> As a result, you may not be able to take bank 2 offline, so your option is 
>> to either leave banks 0-2 all online, or support emptying bank 1 and taking 
>> it offline.
>
> But drivers allocate DMA memory for hardware during module load and stay 
> pinned there until the driver is unloaded, no? So in practice DMA buffers are 
> going to be in banks 0-1?

that depends on when the device was initialized. it is common for them to 
be in the beginning, but with hotplug, who knows.

David Lang



More information about the linux-arm-kernel mailing list