linux/drivers/net/wireless
Vasanthakumar Thiagarajan c86515412f ath6kl: Fix kernel panic during rx aggregation
"ath6kl: Define a structure for connection specific aggregation information"
introduces this. In aggr_conn_init(), vif->aggr_cntxt is assigned to
aggr_conn->aggr_info, but vif->aggr_cntxt is not initialized at this
point, this would end up accessing an invalid pointer in aggregation
receive path. Fix this by passing the correct aggr_info to aggr_conn_init().
The panic trace would look like.

[<ffffffff8159e02e>] panic+0xa1/0x1c6
[<ffffffff8103773d>] ? kmsg_dump+0xfd/0x160
[<ffffffff815a2f6a>] oops_end+0xea/0xf0
[<ffffffff8102b95d>] no_context+0x11d/0x2d0
[<ffffffff8102bc5d>] __bad_area_nosemaphore+0x14d/0x230
[<ffffffff815a5c4d>] ? do_page_fault+0x30d/0x520
[<ffffffff8102bd53>] bad_area_nosemaphore+0x13/0x20
[<ffffffff815a5cfd>] do_page_fault+0x3bd/0x520
[<ffffffff8108bd60>] ? __lock_acquire+0x320/0x1680
[<ffffffff812e3a9d>] ? trace_hardirqs_off_thunk+0x3a/0x3c
[<ffffffff815a2385>] page_fault+0x25/0x30
[<ffffffffa0487a5f>] ? aggr_slice_amsdu+0xdf/0x170 [ath6kl_core]
[<ffffffffa0487bac>] aggr_deque_frms+0xbc/0x190 [ath6kl_core]
[<ffffffffa0488404>] ath6kl_rx+0x3e4/0xae0 [ath6kl_core]
[<ffffffffa047ae77>] ath6kl_htc_rxmsg_pending_handler+0x8b7/0xf10 [ath6kl_core]
[<ffffffffa00c82f0>] ? mmc_do_release_host+0x70/0x90 [mmc_core]
[<ffffffffa00c833a>] ? mmc_release_host+0x2a/0x50 [mmc_core]
[<ffffffffa04865c0>] ? ath6kl_alloc_amsdu_rxbuf+0x140/0x140 [ath6kl_core]
[<ffffffffa0477772>] ath6kl_hif_intr_bh_handler+0x362/0x510 [ath6kl_core]
[<ffffffffa01f1000>] ath6kl_sdio_irq_handler+0x60/0xb0 [ath6kl_sdio]
[<ffffffffa00d30bc>] sdio_irq_thread+0xec/0x320 [mmc_core]
[<ffffffffa00d2fd0>] ? sdio_claim_irq+0x220/0x220 [mmc_core]
[<ffffffffa00d2fd0>] ? sdio_claim_irq+0x220/0x220 [mmc_core]
[<ffffffff8105b21e>] kthread+0xbe/0xd0
[<ffffffff815ab574>] kernel_thread_helper+0x4/0x10
[<ffffffff815a2174>] ? retint_restore_args+0x13/0x13
[<ffffffff8105b160>] ? __init_kthread_worker+0x70/0x70
[<ffffffff815ab570>] ? gs_change+0x13/0x13

Signed-off-by: Vasanthakumar Thiagarajan <vthiagar@qca.qualcomm.com>
Signed-off-by: Kalle Valo <kvalo@qca.qualcomm.com>
2012-01-30 21:11:30 +02:00
..
ath ath6kl: Fix kernel panic during rx aggregation 2012-01-30 21:11:30 +02:00
b43 Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-next into for-davem 2012-01-05 10:13:24 -05:00
b43legacy Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-next into for-davem 2012-01-05 10:13:24 -05:00
brcm80211 Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-next into for-davem 2012-01-03 15:16:34 -05:00
hostap hostap_cs: add ID for Canon K30225 2011-11-28 14:44:00 -05:00
ipw2x00 ipw2x00: remove reset_port functionality 2012-01-04 14:30:46 -05:00
iwlegacy iwlegacy: 3945: fix hw passive scan on radar channels 2012-01-04 14:30:45 -05:00
iwlwifi Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-next into for-davem 2012-01-05 10:13:24 -05:00
iwmc3200wifi module_param: make bool parameters really bool (net & drivers/net) 2011-12-19 22:27:29 -05:00
libertas Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-next into for-davem 2012-01-03 15:16:34 -05:00
libertas_tf net: fix assignment of 0/1 to bool variables. 2011-12-19 22:27:29 -05:00
mwifiex Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2012-01-04 21:35:43 -05:00
orinoco module_param: make bool parameters really bool (net & drivers/net) 2011-12-19 22:27:29 -05:00
p54 module_param: make bool parameters really bool (net & drivers/net) 2011-12-19 22:27:29 -05:00
prism54 Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless 2011-12-02 15:44:03 -05:00
rt2x00 Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-next into for-davem 2012-01-05 10:13:24 -05:00
rtl818x drivers/net: Add module.h to drivers who were implicitly using it 2011-10-31 19:31:07 -04:00
rtlwifi Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-next into for-davem 2012-01-03 15:16:34 -05:00
wl12xx wl12xx: mark no sched scan only after FW event 2011-12-20 22:30:16 +02:00
wl1251 wireless: Remove redundant spi driver bus initialization 2011-11-28 14:43:58 -05:00
zd1211rw drivers/net: Add module.h to drivers who were implicitly using it 2011-10-31 19:31:07 -04:00
adm8211.c drivers/net: Add module.h to drivers who were implicitly using it 2011-10-31 19:31:07 -04:00
adm8211.h
airo.c airo: Fix array bounds warning when moving packet payload. 2011-11-26 15:35:10 -05:00
airo.h
airo_cs.c
at76c50x-usb.c wireless: at76c50x: follow rename pack_hex_byte to hex_byte_pack 2011-10-31 17:30:57 -07:00
at76c50x-usb.h
atmel.c
atmel.h
atmel_cs.c
atmel_pci.c
Kconfig net: wireless: add brcm80211 drivers 2011-10-11 15:55:30 -04:00
mac80211_hwsim.c net: fix assignment of 0/1 to bool variables. 2011-12-19 22:27:29 -05:00
mac80211_hwsim.h
Makefile iwlegacy: rename remaining IWLs to ILs 2011-11-15 11:25:42 +01:00
mwl8k.c Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-next into for-davem 2012-01-05 10:13:24 -05:00
ray_cs.c ray_cs: Fix array bounds warnings. 2011-11-26 15:41:29 -05:00
ray_cs.h
rayctl.h ray_cs: Fix array bounds warnings. 2011-11-26 15:41:29 -05:00
rndis_wlan.c rndis_wlan: remove unused macro 2011-11-21 16:22:09 -05:00
wl3501.h
wl3501_cs.c
zd1201.c
zd1201.h