upcoming kerneloops.org item: get_page_from_freelist

From: Arjan van de Ven
Date: Wed Jun 24 2009 - 11:07:23 EST


Hi,

a new item is coming up fast in the kerneloops.org stats, and it's new
in 2.6.31-rc;

http://www.kerneloops.org/searchweek.php?search=get_page_from_freelist

it's this warning in mm/page_alloc.c:

* __GFP_NOFAIL is not to be used in new code.
*
* All __GFP_NOFAIL callers should be fixed so that they
* properly detect and handle allocation failures.
*
* We most definitely don't want callers attempting to
* allocate greater than single-page units with
* __GFP_NOFAIL.
*/
WARN_ON_ONCE(order > 0);


typical backtraces look like

get_page_from_freelist
__alloc_pages_nodemask
alloc_pages_current
alloc_slab_page
new_slab
__slab_alloc
kmem_cache_alloc_notrace
start_this_handle
jbd2_journal_start

and

get_page_from_freelist
__alloc_pages_nodemask
alloc_pages_current
alloc_slab_page
new_slab
__slab_alloc
kmem_cache_alloc_notrace
start_this_handle
journal_start
ext3_journal_start_sb
ext3_journal_start
ext3_dirty_inode

but there are some other ones as well at the url above.


git blame shows that

commit dab48dab37d2770824420d1e01730a107fade1aa
Author: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
Date: Tue Jun 16 15:32:37 2009 -0700

introduced this WARN_ON.....



--
Arjan van de Ven Intel Open Source Technology Centre
For development, discussion and tips for power savings,
visit http://www.lesswatts.org
--
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/