Latest working kernel version: unknown Earliest failing kernel version: unknown Distribution: gentoo 2008.0 Hardware Environment: Pentium D 3.00GHz, 2GB RAM, 1GB SWAP, two Tigon3 (BCM95721) Software Environment: SMP PREEMPT x86_64 Problem Description: while transferring a 54GB backup (single file) through a 1Gbps link the process finish successfully but the following message shows up in 'dmesg': "swapper: page allocation failure"; if I 'swapoff -a' before the transfer nothing shows up with 'dmesg' Steps to reproduce: - make sure swap space is enabled ('swapon -a') - on local PC (the one with the problem): 'nc -l -p 8888|tar vxf -' - on remote PC (fileserver): 'cat 54GB-backup.tar|nc problematicserver 8888' - wait fo the transfer to happen; after a while you'll get the message --- [snip] --- swapper: page allocation failure. order:0, mode:0x20 Pid: 0, comm: swapper Not tainted 2.6.26.7 #1 Call Trace: <IRQ> [<ffffffff80256ab0>] __alloc_pages_internal+0x38b/0x3a4 [<ffffffff8026fa41>] cache_alloc_refill+0x247/0x490 [<ffffffff8026fd00>] __kmalloc+0x76/0xa2 [<ffffffff805019d9>] __alloc_skb+0x56/0x11c [<ffffffff80502999>] __netdev_alloc_skb+0x15/0x2f [<ffffffff80467db6>] tg3_alloc_rx_skb+0xdd/0x18b [<ffffffff8046c3d2>] tg3_poll+0x3b2/0x785 [<ffffffff80507e4e>] net_rx_action+0x69/0x12c [<ffffffff8022fe23>] __do_softirq+0x55/0xc4 [<ffffffff8021acf5>] ack_apic_level+0x12/0xd5 [<ffffffff8020c2ec>] call_softirq+0x1c/0x28 [<ffffffff8020e2ee>] do_softirq+0x2c/0x68 [<ffffffff8022fd16>] irq_exit+0x3f/0x50 [<ffffffff8020e40a>] do_IRQ+0xb6/0xd4 [<ffffffff80211618>] mwait_idle+0x0/0x44 [<ffffffff8020b641>] ret_from_intr+0x0/0xa <EOI> [<ffffffff8047bf7a>] scsi_request_fn+0x0/0x32e [<ffffffff80211659>] mwait_idle+0x41/0x44 [<ffffffff80209f27>] cpu_idle+0x4c/0x88 Mem-info: DMA per-cpu: CPU 0: hi: 0, btch: 1 usd: 0 CPU 1: hi: 0, btch: 1 usd: 0 DMA32 per-cpu: CPU 0: hi: 186, btch: 31 usd: 99 CPU 1: hi: 186, btch: 31 usd: 65 Active:2504 inactive:483125 dirty:28842 writeback:12612 unstable:0 free:2533 slab:22131 mapped:984 pagetables:281 bounce:0 DMA free:8024kB min:24kB low:28kB high:36kB active:0kB inactive:560kB present:9268kB pages_scanned:0 all_unreclaimable? no lowmem_reserve[]: 0 2003 2003 2003 DMA32 free:2108kB min:5712kB low:7140kB high:8568kB active:10016kB inactive:1931940kB present:2052064kB pages_scanned:0 all_unreclaimable? no lowmem_reserve[]: 0 0 0 0 DMA: 302*4kB 320*8kB 11*16kB 0*32kB 0*64kB 0*128kB 0*256kB 0*512kB 0*1024kB 0*2048kB 1*4096kB = 8040kB DMA32: 0*4kB 1*8kB 1*16kB 1*32kB 0*64kB 0*128kB 0*256kB 0*512kB 0*1024kB 1*2048kB 0*4096kB = 2104kB 484201 total pagecache pages Swap cache: add 44, delete 44, find 0/0 Free swap = 1060096kB Total swap = 1060272kB 524224 pages of RAM 9529 reserved pages 486950 pages shared 0 pages swap cached --- [/snip] ---
Created attachment 19095 [details] 'dmesg' right after booting the system, no error shown
yes, it's just a diagnostic warning that the network is allocating memory faster than the VM system is reclaiming it. Everything should recover and run to completion. You should be able to make the warning go away by increasing /proc/sys/vm/min_free_kbytes.
Created attachment 19096 [details] kernel config, 2.6.26.7
after a fresh boot: 'cat /proc/sys/vm/min_free_kbytes' outputs something just over 5MB did: echo 8192>/proc/sys/vm/min_free_kbytes then the same backup transfer over the gigabit network and now I don't get any warning message(s) and the swap space did get used (just ~220kB, but w/o any problems) THANK YOU!, next time you come to Puerto Rico I'll buy you a couple of beers. :)