BUG in FIB trie v.0.404 kernel 2.6.16

From: Robert Olsson
Date: Sun Mar 26 2006 - 05:24:33 EST



Jesper Dangaard Brouer writes:

> BUG report for: FIB trie v.0.404
> Kernel version: 2.6.16
>
> When booting the kernel, the following debug output is printed. I assume
> its a bug in the FIB trie code, as it is printed right after the fib tree
> code is activated, and some of the functions refer to the trie code.

> Linux version 2.6.16-orig (hawk@host) (gcc version 3.3.4) #1 SMP PREEMPT Sat Mar 25 22:26:15 CET 2006
> ...
> IPv4 FIB: Using LC-trie version 0.404
> Debug: sleeping function called from invalid context at mm/slab.c:2729
> in_atomic():1, irqs_disabled():0
> [<c0103c4e>] show_trace+0x20/0x24

Hello!

I've have enabled debugging and was expecting to see this as well but I don't.
I'll assume this disapears if you change GFP_KERNEL to GFP_ATOMIC for tnode
and leaf allocations well replace throughout fib_trie.c

Cheers.
--ro

grep GFP /usr/src/git/new/net/ipv4/fib_trie.c
return kcalloc(size, 1, GFP_KERNEL);
pages = alloc_pages(GFP_KERNEL|__GFP_ZERO, get_order(size));
struct leaf *l = kmalloc(sizeof(struct leaf), GFP_KERNEL);
struct leaf_info *li = kmalloc(sizeof(struct leaf_info), GFP_KERNEL);
GFP_KERNEL);
stat = kmalloc(sizeof(*stat), GFP_KERNEL);
struct fib_trie_iter *s = kmalloc(sizeof(*s), GFP_KERNEL);
struct fib_trie_iter *s = kmalloc(sizeof(*s), GFP_KERNEL);
-
To unsubscribe from this list: send the line "unsubscribe linux-net" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html