[lkml]   [2006]   [Nov]   [23]   [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 Thu, 23 Nov 2006, Mel Gorman wrote:
    > There are a suprising number of GFP_HIGHUSER users. I've included an
    > untested patch below to give an idea of what the reworked patch would
    > look like.

    Thanks. Seeing the patch actually was useful, because I think this isa
    good idea quite regardless of anything else: it adds a certain amount of
    "inherent documentation" when you see a line like

    page = alloc_page(GFP_HIGHUNMOVABLE);

    because it makes it very obvious that something is going on.

    At the same time, I do get the feelign that maybe we should simply go the
    other way: talk about allocating MOVABLE pages instead of talking about
    allocating pages that are NOT movable.

    Because usually it's really that way you think about it: when you allocate
    a _movable_ page, you need to add support for moving it some way (ie you
    need to put it on the proper page-cache lists etc), while a page that you
    don't think about is generally _not_ movable.

    So: I think this is the right direction, but I would actually prefer to

    page = alloc_page(GFP_[HIGH_]MOVABLE);

    instead, and then just teach the routines that create movable pages
    (whether they are movable because they are in the page cache, or for some
    other reason) to use that flag instead of GFP_[HIGH]USER.

    And the assumption would be that if it's MOVABLE, then it's obviously a
    USER allocation (it it can fail much more eagerly - that's really what the
    whole USER bit ends up meaning internally).

    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.030 / U:99.576 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site