lkml.org 
[lkml]   [2009]   [Nov]   [13]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: [PATCH 07/10] bootmem: add free_bootmem_late
    * Pekka Enberg (penberg@cs.helsinki.fi) wrote:
    > On Mon, Nov 9, 2009 at 10:13 PM, Pekka Enberg <penberg@cs.helsinki.fi> wrote:
    > >>        for (cursor = start; cursor < end; cursor += BITS_PER_LONG) {
    > >> -               unsigned long idx, vec;
    > >> +               unsigned long vec;
    > >>
    > >> -               idx = cursor - start;
    > >> -               vec = ~map[idx / BITS_PER_LONG];
    > >> +               if (map) {
    > >> +                       unsigned long idx = cursor - start;
    > >> +                       vec = ~map[idx / BITS_PER_LONG];
    > >> +               } else {
    > >> +                       if (end - cursor >= BITS_PER_LONG)
    > >> +                               vec = ~0UL;
    > >
    > > Why do we need the above?
    >
    > OK, I figured that out. I'm not sure why you want to play tricks with
    > "vec" when you could just add a new helper that calls
    > __free_pages_bootmem() for the full contiguous page range.

    I did it this way since it's simple enough and allows for high-order
    frees (these will nearly all be high-order) and keeps the same core
    code exercised in each path. You can't do a higher order free
    w/ __free_pages_bootmem() w/out conforming to its requirements.
    I don't care either way.

    thanks,
    -chris
    --
    To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
    the body of a message to majordomo@vger.kernel.org
    More majordomo info at http://vger.kernel.org/majordomo-info.html
    Please read the FAQ at http://www.tux.org/lkml/

    \
     
     \ /
      Last update: 2009-11-13 22:15    [W:0.032 / U:120.984 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site