Re: [PATCH 2/3] make new alloc_pages_exact()

From: Dave Hansen
Date: Wed Apr 13 2011 - 19:23:40 EST


On Tue, 2011-04-12 at 17:58 +0200, Michal Nazarewicz wrote:
> > Actually, the various mem_map[]s _are_ arrays, at least up to
> > MAX_ORDER_NR_PAGES at a time. We can use that property here.
>
> In that case, waiting eagerly for the new patch. :)

I misunderstood earlier. release_pages() takes an array of 'struct page
*', not an array of 'struct page'. To use it here, we'd need to
construct temporary arrays. If we're going to do that, we should
probably just use pagevecs, and if we're going to do _that_, we don't
need release_pages().

Nobody calls free_pages_exact() in any kind of hot path these days.
Most of the users are like kernel profiling where they *never* free the
memory. I'm not sure it's worth the complexity to optimize this.

-- Dave

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