From: Larry Finger <Larry.Finger@lwfinger.net>
To: "Luis R. Rodriguez" <mcgrof@qca.qualcomm.com>,
Jouni Malinen <jouni@qca.qualcomm.com>,
Vasanthakumar Thiagarajan <vthiagar@qca.qualcomm.com>,
Senthil Balasubramanian <senthilb@qca.qualcomm.com>
Cc: wireless <linux-wireless@vger.kernel.org>
Subject: Kernel Panics from ath9k
Date: Sun, 01 Apr 2012 13:20:07 -0500 [thread overview]
Message-ID: <4F789C57.2090903@lwfinger.net> (raw)
A few weeks ago, I was trying to help an inexperienced user on the openSUSE
Wireless Forum who was having "crashes" caused by his AR9285 device. The crash
turned out to be a kernel panic. As expected, I was not able to help him, and I
ordered one of these cards through E-bay. It just arrived, and I am able to
duplicate the panics. For me, they occur when changing from a WPA2-encrypted AP
to one with WPA encryption. When switching from WPA2 to WEP, the NULL
dereference does not occur; however, the connection fails.
I captured enough info from the debugging console to know that the panic results
from "BUG: unable to handle kernel NULL pointer dereference at (null)" that
originates at ath_tx_start+0x2c0/0x4b0. The kernel is x86_64 and I am currently
testing kernel v3.4-rc1-214-g1ac7a92 from Linus's tree. I have not yet tested
the wireless-testing tree, but I do not see any commits there that appear to
address this issue.
The address of the traceback translates to line 1878 of
drivers/net/wireless/ath/ath9k/xmit.c, which is (ironically) a WARN_ON that says
WARN_ON(tid->ac->txq != txctl->txq);
By testing each of the pointers in the above statement, I determined that
tid->ac is NULL. Note: This statement is actually in ath_tx_start_dma(), which
appears to be in-lined by the compiler. My tests process the pointers from left
to right, and txctl or txctl->txq may also be NULL. The setting of tid is done with
tid = ATH_AN_2_TID(txctl->an, tidno);
I have not traced this any further yet to see why tid is not correct.
The full lspci output for my device is
06:00.0 Network controller [0280]: Atheros Communications Inc. AR9285 Wireless
Network Adapter (PCI-Express) [168c:002b] (rev 01)
Subsystem: Accton Technology Corporation Device [1113:d811]
Flags: bus master, fast devsel, latency 0, IRQ 20
Memory at f8000000 (64-bit, non-prefetchable) [size=64K]
Capabilities: [40] Power Management version 3
Capabilities: [50] MSI: Enable- Count=1/1 Maskable- 64bit-
Capabilities: [60] Express Legacy Endpoint, MSI 00
Capabilities: [100] Advanced Error Reporting
Capabilities: [140] Virtual Channel
Capabilities: [160] Device Serial Number 00-15-17-ff-ff-24-14-12
Capabilities: [170] Power Budgeting <?>
Kernel driver in use: ath9k
I will be happy to provide any further information that may be required.
Larry
next reply other threads:[~2012-04-01 18:20 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-04-01 18:20 Larry Finger [this message]
2012-04-02 2:34 ` Kernel Panics from ath9k Sujith Manoharan
2012-04-02 3:54 ` Larry Finger
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=4F789C57.2090903@lwfinger.net \
--to=larry.finger@lwfinger.net \
--cc=jouni@qca.qualcomm.com \
--cc=linux-wireless@vger.kernel.org \
--cc=mcgrof@qca.qualcomm.com \
--cc=senthilb@qca.qualcomm.com \
--cc=vthiagar@qca.qualcomm.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.