Re: [PATCH] Properly account for freed pages in free_pages_bulk() and when allocating high-order pages in buffered_rmqueue()

Mel Gorman
2009-04-28T16:51:47Z

On Tue, Apr 28, 2009 at 12:37:22PM -0400, Christoph Lameter wrote:
> On Tue, 28 Apr 2009, Mel Gorman wrote:
>
> > @@ -1151,6 +1151,7 @@ again:
> > } else {
> > spin_lock_irqsave(&zone->lock, flags);
> > page = __rmqueue(zone, order, migratetype);
> > + __mod_zone_page_state(zone, NR_FREE_PAGES, -(1UL << order));
> > spin_unlock(&zone->lock);
> > if (!page)
> > goto failed;
>
> __mod_zone_page_state takes an signed integer argument. Not sure what is
> won by the UL suffix here.
>

Matches other call sites such as in __offline_isolated_pages(), habit when
using shifts like this and matches other locations, paranoia, doesn't hurt.

--
Mel Gorman
Part-time Phd Student Linux Technology Center
University of Limerick IBM Dublin Software Lab