linux/drivers/net/wireless/ath
Vasanthakumar Thiagarajan 94e532d1a0 ath6kl: Fix system freeze under heavy data load
Patch "ath6kl: Fix buffer alignment for scatter-gather write" does
memmove for a length (scat_req->scat_list[i].len) which is not the
actual length of data that is suppossed to be moved. The right
lengh is packet->act_len + HTC_HDR_LENGTH. Using wrong length
for data move during buffer alignment causes system freeze after
the following WARN_ON and sometimes target assert.

WARNING: at drivers/net/wireless/ath/ath6kl/main.c:771 ath6k_credit_distribute+0x196/0x1a0
 [<ffffffffa051cf5f>] ath6kl_htc_rxmsg_pending_handler+0x83f/0xe00 [ath6kl]
 [<ffffffff8104a743>] ? __wake_up+0x53/0x70
 [<ffffffffa0518b18>] ath6kldev_intr_bh_handler+0x188/0x650 [ath6kl]
 [<ffffffffa052d316>] ath6kl_sdio_irq_handler+0x36/0x80 [ath6kl]
 [<ffffffff81492b3c>] sdio_irq_thread+0xfc/0x360
 [<ffffffff81051c52>] ? default_wake_function+0x12/0x20
 [<ffffffff81492a40>] ? sdio_claim_irq+0x220/0x220
 [<ffffffff81080c36>] kthread+0x96/0xa0
 [<ffffffff815b9fb4>] kernel_thread_helper+0x4/0x10
 [<ffffffff81080ba0>] ? kthread_worker_fn+0x190/0x190
 [<ffffffff815b9fb0>] ? gs_change+0x13/0x13

Signed-off-by: Vasanthakumar Thiagarajan <vthiagar@qca.qualcomm.com>
Signed-off-by: Kalle Valo <kvalo@qca.qualcomm.com>
2011-08-31 10:10:54 +03:00
..
ath5k ath5k: remove last references to "softc" 2011-08-08 16:04:14 -04:00
ath6kl ath6kl: Fix system freeze under heavy data load 2011-08-31 10:10:54 +03:00
ath9k ath9k: defer ath_tx_setup_buffer setup to the first tx attempt during aggr 2011-08-30 15:38:53 -04:00
carl9170 carl9170: Use do_div for 64-bit division to fix 32-bit kernels 2011-08-26 10:47:58 -04:00
ath.h ath: Make ath_printk void not int and remove unused struct ath_common * 2011-08-30 15:38:52 -04:00
debug.c ath: Add and use ath_printk and ath_<level> 2010-12-07 16:34:39 -05:00
hw.c Merge ssh://master.kernel.org/pub/scm/linux/kernel/git/linville/wireless-next-2.6 into for-davem 2011-05-24 16:47:54 -04:00
Kconfig Add ath6kl cleaned up driver 2011-08-09 19:45:18 +03:00
key.c ath: use get_unaligned_le{16,32} in ath_hw_keysetmac() 2011-07-18 14:29:41 -04:00
main.c ath: Make ath_printk void not int and remove unused struct ath_common * 2011-08-30 15:38:52 -04:00
Makefile Add ath6kl cleaned up driver 2011-08-09 19:45:18 +03:00
reg.h ath9k_hw: move the cycle counter tracking to ath 2010-10-11 15:04:20 -04:00
regd_common.h ath: fix spelling of Grenada 2011-08-08 16:04:13 -04:00
regd.c Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-next-2.6 into for-davem 2011-04-25 14:34:25 -04:00
regd.h ath: fix spelling of Grenada 2011-08-08 16:04:13 -04:00