Messages in this thread | | | Date | Wed, 19 Sep 2007 23:48:42 +0530 | From | Balbir Singh <> | Subject | Re: 2.6.23-rc6-mm1 panic (memory controller issue ?) |
| |
Christoph Lameter wrote: > On Wed, 19 Sep 2007, Balbir Singh wrote: > >> The fix looks correct, radix_tree_preload() does the same thing in >> add_to_page_cache(). Thanks for identifying the fix > > Hmmm.... Radix tree preload can only take a limited set of flags? >
Yes, the whole code is very interesting. From add_to_page_cache() we call radix_tree_preload with __GFP_HIGHMEM cleared, but from __add_to_swap_cache(), we don't make any changes to the gfp_mask. radix_tree_preload() calls kmem_cache_alloc() and in slub there is a check
BUG_ON(flags & GFP_SLAB_BUG_MASK);
So, I guess all our allocations should check against __GFP_DMA and __GFP_HIGHMEM. I'll review the code, test it and send a fix.
-- Warm Regards, Balbir Singh Linux Technology Center IBM, ISTL - 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/
| |