[lkml]   [2006]   [Nov]   [25]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
    SubjectRe: [PATCH 1/11] Add __GFP_MOVABLE flag and update callers

    On Fri, 24 Nov 2006, Hugh Dickins wrote:
    > You need to add in something like the patch below (mutatis mutandis
    > for whichever approach you end up taking): tmpfs uses highmem pages
    > for its swap vector blocks, noting where on swap the data pages are,
    > and allocates them with mapping_gfp_mask(inode->i_mapping); but we
    > don't have any mechanism in place for reclaiming or migrating those.

    I think this really just points out that you should _not_ put MOVABLE into
    the "mapping_gfp_mask()" at all.

    The mapping_gfp_mask() should really just contain the "constraints" on
    the allocation, not the "how the allocation is used". So things like "I
    need all my pages to be in the 32bit DMA'able region" is a constraint on
    the allocator, as is something like "I need the allocation to be atomic".

    But MOVABLE is really not a constraint on the allocator, it's a guarantee
    by the code _calling_ the allocator that it will then make sure that it
    _uses_ the allocation in a way that means that it is movable.

    So it shouldn't be a property of the mapping itself, it should always be a
    property of the code that actually does the allocation.


    To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
    the body of a message to
    More majordomo info at
    Please read the FAQ at

     \ /
      Last update: 2009-11-18 23:46    [W:0.021 / U:34.744 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site