diff --git a/[refs] b/[refs] index b01cbfd0f648..3a348ce7e5e1 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: bf61549a2d8e0326f5d6e4d1718883a7212d725f +refs/heads/master: 53348f27168534561c0c814843bbf181314374f4 diff --git a/trunk/mm/page_alloc.c b/trunk/mm/page_alloc.c index 9119faae6e6a..b6da6ed818a8 100644 --- a/trunk/mm/page_alloc.c +++ b/trunk/mm/page_alloc.c @@ -705,10 +705,10 @@ void __meminit __free_pages_bootmem(struct page *page, unsigned int order) int loop; prefetchw(page); - for (loop = 0; loop < BITS_PER_LONG; loop++) { + for (loop = 0; loop < (1 << order); loop++) { struct page *p = &page[loop]; - if (loop + 1 < BITS_PER_LONG) + if (loop + 1 < (1 << order)) prefetchw(p + 1); __ClearPageReserved(p); set_page_count(p, 0);