Re: Kernel 2.6.9 page allocation failures?

From: Francois Romieu
Date: Tue Oct 19 2004 - 14:37:11 EST


Justin Piszcz <jpiszcz@xxxxxxxxxxxxxxx> :
[...]
> lftp: page allocation failure. order:0, mode:0x20
> [<c01391a7>] __alloc_pages+0x247/0x3b0
> [<c0139328>] __get_free_pages+0x18/0x40
> [<c013c9af>] kmem_getpages+0x1f/0xc0
> [<c013d6f0>] cache_grow+0xc0/0x1a0
> [<c013d99b>] cache_alloc_refill+0x1cb/0x210
> [<c013de01>] __kmalloc+0x71/0x80
> [<c036f463>] alloc_skb+0x53/0x100
> [<c031f9f8>] e1000_alloc_rx_buffers+0x48/0xf0
> [<c031f6fe>] e1000_clean_rx_irq+0x18e/0x440

If you are using TSO, try patch below by Herbert Xu (available
from http://marc.theaimsgroup.com/?l=linux-netdev&m=109799935603132&w=3)

--- 1.67/net/ipv4/tcp_output.c 2004-10-01 13:56:45 +10:00
+++ edited/net/ipv4/tcp_output.c 2004-10-17 18:58:47 +10:00
@@ -455,8 +455,12 @@
{
struct tcp_opt *tp = tcp_sk(sk);
struct sk_buff *buff;
- int nsize = skb->len - len;
+ int nsize;
u16 flags;
+
+ nsize = skb_headlen(skb) - len;
+ if (nsize < 0)
+ nsize = 0;

if (skb_cloned(skb) &&
skb_is_nonlinear(skb) &&

-
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/