Please note: This project is no longer active. The website is kept online for historic purposes only.
If you´re looking for a Linux driver for your Atheros WLAN device, you should continue here .

Ticket #1941 (closed defect: fixed)

Opened 11 years ago

Last modified 11 years ago

Memory Leak on svn r3426

Reported by: hiwu.tw@msa.hinet.net Assigned to:
Priority: critical Milestone: version 0.9.5
Component: madwifi: 802.11 stack Version: trunk
Keywords: Cc:
Patch is attached: 0 Pending:

Description (Last modified by mrenzmann)

The following is the error log:

RROR: skb initialization failed; size: 3279!
<3>wifi0: ath_rx_tasklet: Failed to reinitialize rxbuf: -12.  Lost an RX buffer!
<7>none: ieee80211_dev_alloc_skb:572 sk_buff allocation of size 3310 failed
<3>wifi0: ath_rxbuf_init: ath_rxbuf_init: ERROR: skb initialization failed; size: 3279!
<3>wifi0: ath_rx_tasklet: Failed to reinitialize rxbuf: -12.  Lost an RX buffer!
<5>eth0: Low memory, packet dropped.
<5>eth0: Low memory, packet dropped.
<7>none: ieee80211_dev_alloc_skb:572 sk_buff allocation of size 3310 failed
<3>wifi0: ath_rxbuf_init: ath_rxbuf_init: ERROR: skb initialization failed; size: 3279!
<3>wifi0: ath_rx_tasklet: Failed to reinitialize rxbuf: -12.  Lost an RX buffer!
<7>none: ieee80211_dev_alloc_skb:572 sk_buff allocation of size 3310 failed
<3>wifi0: ath_rxbuf_init: ath_rxbuf_init: ERROR: skb initialization failed; size: 3279!
<3>wifi0: ath_rx_tasklet: Failed to reinitialize rxbuf: -12.  Lost an RX buffer!

Change History

05/14/08 14:44:10 changed by mrenzmann

  • description changed.
  • summary changed from Memory Leak on svn r 3426 to Memory Leak on svn r3426.

05/15/08 07:28:48 changed by sanbek

I have same problem with r3595. With r3593, there is no problem My board has ixp425 cpu & 64M ram. Here is a backtrace.

swapper: page allocation failure. order:0, mode:0x21
[<c0026748>] (dump_stack+0x0/0x14) from [<c0057d84>] (__alloc_pages+0x29c/0x2b0)
[<c0057ae8>] (__alloc_pages+0x0/0x2b0) from [<c0068dac>] (cache_alloc_refill+0x2b0/0x504)
[<c0068afc>] (cache_alloc_refill+0x0/0x504) from [<c0069170>] (__kmalloc+0x70/0x80)
[<c0069100>] (__kmalloc+0x0/0x80) from [<c0118a10>] (__alloc_skb+0x4c/0xf4)
 r4 = C068A8E0 
[<c01189c4>] (__alloc_skb+0x0/0xf4) from [<bf0dc594>] (ieee80211_dev_alloc_skb+0x24/0x7c [wlan])
 r8 = C372C968  r7 = C372C958  r6 = C3B88260  r5 = 00000CEE
 r4 = 00000002 
[<bf0dc570>] (ieee80211_dev_alloc_skb+0x0/0x7c [wlan]) from [<bf113548>] (ar_device+0x47d8/0xb560 [ath_pci])
 r5 = 00000020  r4 = 00000002 
[<bf1134d8>] (ar_device+0x4768/0xb560 [ath_pci]) from [<bf117ec0>] (ar_device+0x9150/0xb560 [ath_pci])
[<bf117698>] (ar_device+0x8928/0xb560 [ath_pci]) from [<c003c8d8>] (tasklet_action+0x80/0xc8)
[<c003c858>] (tasklet_action+0x0/0xc8) from [<c003c48c>] (__do_softirq2+0x5c/0xd0)
 r5 = C01E8D90  r4 = 00000001 
[<c003c430>] (__do_softirq2+0x0/0xd0) from [<c003c52c>] (__do_softirq+0x2c/0x34)
 r8 = C01A5F54  r7 = C01F16A4  r6 = 10000000  r5 = 0000001F
 r4 = C01E33A0 
[<c003c500>] (__do_softirq+0x0/0x34) from [<c003c648>] (irq_exit+0x40/0x48)
[<c003c608>] (irq_exit+0x0/0x48) from [<c0022bf0>] (asm_do_IRQ+0x100/0x118)
[<c0022af0>] (asm_do_IRQ+0x0/0x118) from [<c0021824>] (__irq_svc+0x24/0x60)
[<c0023424>] (default_idle+0x0/0x4c) from [<c00234b8>] (cpu_idle+0x48/0x64)
[<c0023470>] (cpu_idle+0x0/0x64) from [<c0021024>] (__init_end+0x24/0x2c)
 r5 = C01E293C  r4 = 00000000 
[<c0021000>] (__init_end+0x0/0x2c) from [<c000881c>] (start_kernel+0x1cc/0x224)
[<c0008650>] (start_kernel+0x0/0x224) from [<00008030>] (0x8030)
Mem-info:
DMA per-cpu:
cpu 0 hot: high 18, batch 3 used:2
cpu 0 cold: high 6, batch 1 used:0
DMA32 per-cpu: empty
Normal per-cpu: empty
HighMem per-cpu: empty
Free pages:         376kB (0kB HighMem)
Active:990 inactive:4324 dirty:32 writeback:0 unstable:0 free:94 slab:9666 mapped:712 pagetables:39
DMA free:376kB min:1024kB low:1280kB high:1536kB active:3960kB inactive:17296kB present:65536kB pages_scanned:128 all_unreclaimable? no
lowmem_reserve[]: 0 0 0 0
DMA32 free:0kB min:0kB low:0kB high:0kB active:0kB inactive:0kB present:0kB pages_scanned:0 all_unreclaimable? no
lowmem_reserve[]: 0 0 0 0
Normal free:0kB min:0kB low:0kB high:0kB active:0kB inactive:0kB present:0kB pages_scanned:0 all_unreclaimable? no
lowmem_reserve[]: 0 0 0 0
HighMem free:0kB min:128kB low:128kB high:128kB active:0kB inactive:0kB present:0kB pages_scanned:0 all_unreclaimable? no
lowmem_reserve[]: 0 0 0 0
DMA: 0*4kB 1*8kB 1*16kB 1*32kB 1*64kB 0*128kB 1*256kB 0*512kB 0*1024kB 0*2048kB 0*4096kB = 376kB
DMA32: empty
Normal: empty
HighMem: empty
Free swap:            0kB
16384 pages of RAM
234 free pages
653 reserved pages
9666 slab pages
951 pages shared
0 pages swap cached
wifi0: ath_rxbuf_init: ath_rxbuf_init: ERROR: skb initialization failed; size: 3279!
wifi0: ath_rx_tasklet: Failed to reinitialize rxbuf: -12.  Lost an RX buffer!

05/15/08 08:15:06 changed by strasak@bubakov.net

It is possible this is not memory leak, also it is possible it has nothing to do with madwifi at all. On low memory systems - and sometimes even on not as much restrained systems - high order allocation fail and this happens. See ticket #1272 for details, what you observed happens for me on places on our community network, where madwifi-based - dunno if machines based on other wireless technology will act the same way, only using madwifi/ath5k and marginaly prism here - wireless routers has to route a big lot of p2p traffic, with many open, halfopen and etc. tcp connections, and with lack of memory. What usually help to mitigate the issue is to set min_free_kbytes vm parameter to at least 8192, with that value or higher issue almost never occur even under extremely high load - load in terms of tracked connections and such. I think it is not leak, nor a bug, but that the memory allocation mechanism and especially recovery could be more robust - circular buffers ?, but don't have skills to make it happen :).

05/22/08 15:05:01 changed by mentor

Would you try again with at least r3665, and also, would you provide the contents of '/proc/slabinfo' before and during the low memory condition?

06/17/08 17:51:15 changed by hiwu.tw@msa.hinet.net

This problem memory is fixed now (r3726).
Thank you.

06/18/08 08:51:33 changed by mrenzmann

  • status changed from new to closed.
  • resolution set to fixed.
  • milestone set to version 0.9.5.

Thanks for the feedback.