Alexander Economou wrote:
After raising the mtu on a slackware linux 9.1 / 2.4.25 kernel/ eepro1000 nic from 1500 to 9000 i get the following kernel message
__alloc_pages: 3-order allocation failed (gfp=0x20/0)
Any ideas?
If I'm not wrong, I've seen a similar error when stressing kernel allocating memory, for example, calling kmalloc in a loop.
I bet that the problem is in e1000_change_mtu:
if(old_mtu != adapter->rx_buffer_len && netif_running(netdev)) {
e1000_down(adapter); e1000_up(adapter); }
e1000_up calls the function e1000_alloc_rx_buffers which calls dev_alloc_skb inside a loop.
http://lxr.linux.no/source/drivers/net/e1000/e1000_main.c#L1915
Well, the only way idea to fix this problem which comes to my mind now is adding some usleep stuff inside that loop... mmm but I'm not happy with this solution at all :-(.
hope that it helps anyway.
regards, Pablo
- : send the line "unsubscribe linux-net" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html