Bug 15766

Summary: iwlagn failing order 2 allocations
Product: Drivers Reporter: maximilian attems (max)
Component: network-wirelessAssignee: Reinette Chatre (reinette.chatre)
Status: RESOLVED DUPLICATE    
Severity: normal CC: linville, reinette.chatre
Priority: P1    
Hardware: All   
OS: Linux   
Kernel Version: 2.6.32.11 Subsystem:
Regression: No Bisected commit-id:

Description maximilian attems 2010-04-12 02:03:24 UTC
the situation since 2.6.32.11 got considerably better,
before after 2 suspend cycles it would go boom.
Now it happens after 6-8, still it's annoying enough.
Before it were allocations of order 4 and more,
not it is consistently order 2

[42516.787214] swapper: page allocation failure. order:2, mode:0x4020
[42516.787225] Pid: 0, comm: swapper Not tainted 2.6.32-4-amd64 #1
[42516.787231] Call Trace:
[42516.787236]  <IRQ>  [<ffffffff810b95e9>] ? __alloc_pages_nodemask+0x55b/0x5ce
[42516.787284]  [<ffffffffa0356658>] ? iwl_rx_allocate+0x9f/0x2bf [iwlcore]
[42516.787296]  [<ffffffff810e52c6>] ? kmalloc_large_node+0x5d/0x9a
[42516.787307]  [<ffffffff81240641>] ? __alloc_skb+0x69/0x15a
[42516.787323]  [<ffffffffa0356658>] ? iwl_rx_allocate+0x9f/0x2bf [iwlcore]
[42516.787339]  [<ffffffffa037737c>] ? iwl_rx_handle+0x1a0/0x214 [iwlagn]
[42516.787355]  [<ffffffffa0356886>] ? iwl_rx_replenish_now+0xe/0x17 [iwlcore]
[42516.787368]  [<ffffffffa03776bf>] ? iwl_irq_tasklet_legacy+0x2cf/0x406 [iwlagn]
[42516.787379]  [<ffffffff81066d74>] ? __remove_hrtimer+0x74/0x80
[42516.787390]  [<ffffffff810522aa>] ? tasklet_action+0x78/0xce
[42516.787398]  [<ffffffff810678f1>] ? __hrtimer_start_range_ns+0x226/0x239
[42516.787409]  [<ffffffff8105396e>] ? __do_softirq+0xdd/0x19f
[42516.787423]  [<ffffffffa03521fd>] ? iwl_isr_legacy+0xda/0x124 [iwlcore]
[42516.787434]  [<ffffffff81011cac>] ? call_softirq+0x1c/0x30
[42516.787443]  [<ffffffff81013903>] ? do_softirq+0x3f/0x7c
[42516.787451]  [<ffffffff810537dd>] ? irq_exit+0x36/0x76
[42516.787459]  [<ffffffff81012ffa>] ? do_IRQ+0xa0/0xb6
[42516.787467]  [<ffffffff810114d3>] ? ret_from_intr+0x0/0x11
[42516.787472]  <EOI>  [<ffffffffa01b6647>] ? acpi_idle_enter_simple+0x116/0x148 [processor]
[42516.787505]  [<ffffffffa01b6640>] ? acpi_idle_enter_simple+0x10f/0x148 [processor]
[42516.787518]  [<ffffffffa01b635d>] ? acpi_idle_enter_bm+0xd1/0x2a5 [processor]
[42516.787528]  [<ffffffff812327e2>] ? menu_select+0x145/0x205
[42516.787539]  [<ffffffff81231ae3>] ? cpuidle_idle_call+0x95/0xee
[42516.787549]  [<ffffffff8100fea5>] ? cpu_idle+0xa2/0xda
[42516.787559]  [<ffffffff814e3140>] ? early_idt_handler+0x0/0x71
[42516.787568]  [<ffffffff814e3cd1>] ? start_kernel+0x3dc/0x3e8
[42516.787576]  [<ffffffff814e33b7>] ? x86_64_start_kernel+0xf9/0x106
[42516.787582] Mem-Info:
[42516.787587] Node 0 DMA per-cpu:
[42516.787594] CPU    0: hi:    0, btch:   1 usd:   0
[42516.787600] CPU    1: hi:    0, btch:   1 usd:   0
[42516.787605] Node 0 DMA32 per-cpu:
[42516.787612] CPU    0: hi:  186, btch:  31 usd: 116
[42516.787618] CPU    1: hi:  186, btch:  31 usd: 158
[42516.787631] active_anon:73856 inactive_anon:77051 isolated_anon:12
[42516.787634]  active_file:32577 inactive_file:36721 isolated_file:52
[42516.787637]  unevictable:1 dirty:25682 writeback:4 unstable:0
[42516.787640]  free:2214 slab_reclaimable:7943 slab_unreclaimable:7252
[42516.787643]  mapped:10726 shmem:23550 pagetables:4737 bounce:0
[42516.787649] Node 0 DMA free:3900kB min:60kB low:72kB high:88kB active_anon:2484kB inactive_anon:4708kB active_file:1016kB inactive_file:2864kB unevictable:0kB isolated(anon):0kB isolated(file):0kB present:15356kB mlocked:0kB dirty:16kB writeback:0kB mapped:296kB shmem:648kB slab_reclaimable:488kB slab_unreclaimable:292kB kernel_stack:32kB pagetables:20kB unstable:0kB bounce:0kB writeback_tmp:0kB pages_scanned:0 all_unreclaimable? no
[42516.787678] lowmem_reserve[]: 0 969 969 969
[42516.787689] Node 0 DMA32 free:4956kB min:3948kB low:4932kB high:5920kB active_anon:292940kB inactive_anon:303496kB active_file:129292kB inactive_file:143924kB unevictable:4kB isolated(anon):48kB isolated(file):208kB present:992512kB mlocked:4kB dirty:102712kB writeback:16kB mapped:42608kB shmem:93552kB slab_reclaimable:31284kB slab_unreclaimable:28716kB kernel_stack:2272kB pagetables:18928kB unstable:0kB bounce:0kB writeback_tmp:0kB pages_scanned:32 all_unreclaimable? no
[42516.787719] lowmem_reserve[]: 0 0 0 0
[42516.787729] Node 0 DMA: 39*4kB 12*8kB 10*16kB 27*32kB 9*64kB 0*128kB 0*256kB 0*512kB 0*1024kB 1*2048kB 0*4096kB = 3900kB
[42516.787755] Node 0 DMA32: 1038*4kB 32*8kB 2*16kB 0*32kB 0*64kB 1*128kB 0*256kB 1*512kB 0*1024kB 0*2048kB 0*4096kB = 5080kB
[42516.787781] 105853 total pagecache pages
[42516.787786] 13012 pages in swap cache
[42516.787792] Swap cache stats: add 271037, delete 258025, find 56920/75225
[42516.787797] Free swap  = 1947272kB
[42516.787801] Total swap = 2285824kB
[42516.790821] 255664 pages RAM
[42516.790821] 5332 pages reserved
[42516.790821] 98550 pages shared
[42516.790821] 172003 pages non-shared
[42516.790821] iwlagn 0000:03:00.0: Failed to allocate SKB buffer with GFP_ATOMIC. Only 0 free buffers remaining.

this is still an 4965 on X61s Thinkpad,
wireless is WEP encrypted will try if open makes a diff for those mem allocations. thanks
Comment 1 Reinette Chatre 2010-04-13 23:27:53 UTC
This is a duplicate of 14141. The real cause why atomic memory allocations are having higher likelihood of failure has not been found yet ... that is why that bug is still open. Even so, since 2.6.33 iwlwifi is not as noisy when these allocations fail and it also supports paged RX since then which reduces the load on the memory allocation significantly. So, after 2.6.33 you should not run into the memory allocation issues with iwlwifi. If you are still having issues with memory allocation with other parts of kernel then you can track 14141.

*** This bug has been marked as a duplicate of bug 14141 ***