lkml.org 
[lkml]   [2012]   [Aug]   [14]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: [RFC PATCH] mm: introduce N_LRU_MEMORY to distinguish between normal and movable memory
    On 2012/8/10 22:12, Christoph Lameter (Open Source) wrote:
    > On Fri, 10 Aug 2012, Hanjun Guo wrote:
    >
    >> On 2012/8/9 22:06, Christoph Lameter (Open Source) wrote:
    >>> On Thu, 9 Aug 2012, Hanjun Guo wrote:
    >>>
    >>>> Now, We have node masks for both N_NORMAL_MEMORY and
    >>>> N_HIGH_MEMORY to distinguish between normal and highmem on platforms such as x86.
    >>>> But we still don't have such a mechanism to distinguish between "normal" and "movable"
    >>>> memory.
    >>>
    >>> What is the exact difference that you want to establish?
    >>
    >> Hi Christoph,
    >> Thanks for your comments very much!
    >>
    >> We want to identify the node only has ZONE_MOVABLE memory.
    >> for example:
    >> node 0: ZONE_DMA, ZONE_DMA32, ZONE_NORMAL--> N_LRU_MEMORY, N_NORMAL_MEMORY
    >> node 1: ZONE_MOVABLE --> N_LRU_MEMORY
    >> thus, in SLUB allocator, will not allocate memory control structures for node1.
    >
    > So this would change the N_NORMAL_MEMORY definition so that N_NORMAL
    > means !LRU allocs possible? So far N_NORMAL_MEMORY has a wider scope of
    > meaning. We need an accurate definition of the meaning of all these
    > attributes.

    Hi Christoph,
    Sorry for the late reply.

    yes, N_LRU_MEMORY means LRU allocs possible,
    N_NORMAL_MEMORY means !LRU allocs possible.
    node with ZONE_DMA/ZONE_DMA32/ZONE_NORMAL is marked with N_LRU_MEMORY and N_NORMAL_MEMORY,
    node with ZONE_MOVABLE is *only* marked with N_LRU_MEMORY.

    >
    >>> For the slab case that you want to solve here you will need to know if the
    >>> node has *only* movable memory and will never have any ZONE_NORMAL memory.
    >>> If so then memory control structures for allocators that do not allow
    >>> movable memory will not need to be allocated for these node. The node can
    >>> be excluded from handling.
    >>
    >> I think this is what we are trying to do in this patch.
    >> did I miss something?
    >
    > THe meaning of ZONE_NORMAL seems to change which causes confusion. Please
    > describe in detail what each of these attributes mean.
    >
    > .
    >




    \
     
     \ /
      Last update: 2012-08-14 14:42    [W:2.503 / U:0.632 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site