Comment 18 for bug 164018

Revision history for this message
Marcus Blomenkamp (mblomenk) wrote :

The problem is still present in Ubuntu 9.10. In my case the machine has 120MB of memory and 192MB of swap. Swap usage was about 10MB when the following happened during heavy network IO:

[ 2489.732639] swapper: page allocation failure. order:0, mode:0x4020
[ 2489.732659] Pid: 0, comm: swapper Not tainted 2.6.31-16-generic-pae #53-Ubuntu
[ 2489.732668] Call Trace:
[ 2489.732696] [<c057481e>] ? printk+0x18/0x1a
[ 2489.732720] [<c01ba2c0>] __alloc_pages_slowpath+0x340/0x480
[ 2489.732735] [<c01ba50f>] __alloc_pages_nodemask+0x10f/0x120
[ 2489.732754] [<c01e201a>] new_slab+0x19a/0x200
[ 2489.732769] [<c01e2fcf>] __slab_alloc+0xaf/0x260
[ 2489.732783] [<c01e3f6a>] __kmalloc_track_caller+0x16a/0x180
[ 2489.732803] [<c0499c8e>] ? __netdev_alloc_skb+0x1e/0x40
[ 2489.732815] [<c0499c8e>] ? __netdev_alloc_skb+0x1e/0x40
[ 2489.732828] [<c049995d>] __alloc_skb+0x4d/0x130
[ 2489.732840] [<c0499c8e>] __netdev_alloc_skb+0x1e/0x40
[ 2489.732881] [<c8723a53>] rtl8139_rx+0xd3/0x280 [8139too]
[ 2489.732901] [<c8723c45>] rtl8139_poll+0x45/0xc0 [8139too]
[ 2489.732922] [<c0168f0d>] ? clocksource_get_next+0x3d/0x50
[ 2489.732941] [<c04a4a75>] net_rx_action+0xe5/0x1c0
[ 2489.732958] [<c87233e6>] ? rtl8139_interrupt+0x96/0x180 [8139too]
[ 2489.732978] [<c014cc40>] __do_softirq+0x90/0x1a0
[ 2489.732998] [<c0128098>] ? default_spin_lock_flags+0x8/0x10
[ 2489.733013] [<c0576bda>] ? _spin_lock_irqsave+0x2a/0x40
[ 2489.733032] [<c0106b92>] ? enable_8259A_irq+0x42/0x60
[ 2489.733044] [<c014cd8d>] do_softirq+0x3d/0x40
[ 2489.733056] [<c014cecd>] irq_exit+0x5d/0x70
[ 2489.733067] [<c0104f10>] do_IRQ+0x50/0xc0
[ 2489.733078] [<c014cec0>] ? irq_exit+0x50/0x70
[ 2489.733099] [<c011ddc7>] ? smp_apic_timer_interrupt+0x57/0x90
[ 2489.733111] [<c01039b0>] common_interrupt+0x30/0x40
[ 2489.733124] [<c0127365>] ? native_safe_halt+0x5/0x10
[ 2489.733136] [<c010a5b6>] default_idle+0x46/0xd0
[ 2489.733148] [<c010202c>] cpu_idle+0x8c/0xd0
[ 2489.733170] [<c0564815>] rest_init+0x55/0x60
[ 2489.733182] [<c07958cd>] start_kernel+0x2e6/0x2ec
[ 2489.733193] [<c0795406>] ? unknown_bootoption+0x0/0x1ab
[ 2489.733212] [<c079507c>] i386_start_kernel+0x7c/0x83
[ 2489.733220] Mem-Info:
[ 2489.733226] DMA per-cpu:
[ 2489.733234] CPU 0: hi: 0, btch: 1 usd: 0
[ 2489.733241] Normal per-cpu:
[ 2489.733248] CPU 0: hi: 42, btch: 7 usd: 41
[ 2489.733262] Active_anon:370 active_file:13055 inactive_anon:468
[ 2489.733267] inactive_file:12624 unevictable:0 dirty:0 writeback:0 unstable:0
[ 2489.733272] free:236 slab:1936 mapped:4460 pagetables:398 bounce:0
[ 2489.733288] DMA free:496kB min:176kB low:220kB high:264kB active_anon:124kB inactive_anon:184kB active_file:3592kB inactive_file:3304kB unevictable:0kB present:15804kB pages_scanned:32 all_unreclaimable? no
[ 2489.733301] lowmem_reserve[]: 0 109 109 109
[ 2489.733321] Normal free:448kB min:1252kB low:1564kB high:1876kB active_anon:1356kB inactive_anon:1688kB active_file:48628kB inactive_file:47192kB unevictable:0kB present:112584kB pages_scanned:806 all_unreclaimable? no
[ 2489.733334] lowmem_reserve[]: 0 0 0 0
[ 2489.733347] DMA: 124*4kB 0*8kB 0*16kB 0*32kB 0*64kB 0*128kB 0*256kB 0*512kB 0*1024kB 0*2048kB 0*4096kB = 496kB
[ 2489.733379] Normal: 10*4kB 35*8kB 0*16kB 0*32kB 0*64kB 1*128kB 0*256kB 0*512kB 0*1024kB 0*2048kB 0*4096kB = 448kB
[ 2489.733412] 25814 total pagecache pages
[ 2489.733419] 130 pages in swap cache
[ 2489.733427] Swap cache stats: add 9536, delete 9406, find 1800/3009
[ 2489.733434] Free swap = 180752kB
[ 2489.733440] Total swap = 192740kB
[ 2489.735890] 32448 pages RAM
[ 2489.735896] 0 pages HighMem
[ 2489.735901] 2391 pages reserved
[ 2489.735907] 6927 pages shared
[ 2489.735912] 25106 pages non-shared
[ 2489.735922] SLUB: Unable to allocate memory on node -1 (gfp=0x20)
[ 2489.735935] cache: kmalloc-2048, object size: 2048, buffer size: 2048, default order: 2, min order: 0
[ 2489.735946] node 0: slabs: 120, objs: 792, free: 0
[ 2489.735959] eth1: Memory squeeze, dropping packet.
[...]

I will try the latest mainline kernel after new-years-day but i am not expecting any better because the same kind of problem (also for other drivers) has been known for years and new kernel versions did not fix the problem.