Re: [BUG]kmalloc memory in reiserfs code failed on a dual amd64/4G linux 2.6.2 box

From: Oleg Drokin
Date: Fri Feb 13 2004 - 05:59:52 EST


Hello!

Andrew Morton <akpm@xxxxxxxx> wrote:
>> sort: page allocation failure. order:1, mode:0x20
AM> Nikita, why cannot get_mem_for_virtual_node() use GFP_KERNEL?

Well, I am not Nikita, but this comment appears at the place:
/* get memory for virtual item */
buf = reiserfs_kmalloc(size, GFP_ATOMIC, tb->tb_sb);
if ( ! buf ) {
/* getting memory with GFP_KERNEL priority may involve
balancing now (due to indirect_to_direct conversion on
dcache shrinking). So, release path and collected
resources here */
free_buffers_in_tb (tb);
buf = reiserfs_kmalloc(size, GFP_NOFS, tb->tb_sb);
..

This should answer your question, I guess.

Bye,
Oleg
-
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/