linux-wireless.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* Kernel Panic in __ieee80211_tx with p43usb as AP
@ 2009-08-24 20:07 Larry Finger
  2009-08-24 20:16 ` Johannes Berg
  2009-08-24 20:19 ` Bob Copeland
  0 siblings, 2 replies; 4+ messages in thread
From: Larry Finger @ 2009-08-24 20:07 UTC (permalink / raw)
  To: Johannes Berg, Chr; +Cc: wireless, John Linville

In trying to track down a WARNING reported while using p54usb as the
basis for an AP (http://bugzilla.kernel.org/show_bug.cgi?id=13725), I
created an AP using hostapd 0.6.8. It worked fine as long as I used a
Linux client. I ran repeated tcpperf runs through it to my server, and
repeated installations of b43 firmware. That routine uses wget to pull
the driver files. The only machine I had available as a client does
not include X, so I could not run a browser.

All went well until I had a Windows Vista client connect to the
network. As soon as I launched a browser, the kernel on the AP crashed.

The kernel in question is 2.6.31-rc7-Linus-00012-g3edf2fb from the
mainline tree. I do not know the reported reason for the panic, as
that scrolls off the screen. The traceback shows the error to be in
__ieee80211_tx in this statement: ret = drv_tx(local, skb), which
makes the problem be here:

static inline int drv_tx(struct ieee80211_local *local, struct sk_buff
*skb)
{
        return local->ops->tx(&local->hw, skb);
}

Are there any suggest changes that would let me debug this problem
without crashing the kernel?

Thanks,

Larry


^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: Kernel Panic in __ieee80211_tx with p43usb as AP
  2009-08-24 20:07 Kernel Panic in __ieee80211_tx with p43usb as AP Larry Finger
@ 2009-08-24 20:16 ` Johannes Berg
  2009-08-24 20:19 ` Bob Copeland
  1 sibling, 0 replies; 4+ messages in thread
From: Johannes Berg @ 2009-08-24 20:16 UTC (permalink / raw)
  To: Larry Finger; +Cc: Chr, wireless, John Linville

[-- Attachment #1: Type: text/plain, Size: 1081 bytes --]

On Mon, 2009-08-24 at 15:07 -0500, Larry Finger wrote:

> All went well until I had a Windows Vista client connect to the
> network. As soon as I launched a browser, the kernel on the AP crashed.

Rather strange.

> The kernel in question is 2.6.31-rc7-Linus-00012-g3edf2fb from the
> mainline tree. I do not know the reported reason for the panic, as
> that scrolls off the screen. The traceback shows the error to be in
> __ieee80211_tx in this statement: ret = drv_tx(local, skb), which
> makes the problem be here:
> 
> static inline int drv_tx(struct ieee80211_local *local, struct sk_buff
> *skb)
> {
>         return local->ops->tx(&local->hw, skb);
> }
> 
> Are there any suggest changes that would let me debug this problem
> without crashing the kernel?

Are you sure it's right there, and not maybe in p54's tx routine which
gets called from here? I mean, the only reason I see for this particular
line of code to go wrong would be corruption of the "local",
"local->ops", or "local->ops->tx" pointers, which seems rather unlikely.

johannes

[-- Attachment #2: This is a digitally signed message part --]
[-- Type: application/pgp-signature, Size: 801 bytes --]

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: Kernel Panic in __ieee80211_tx with p43usb as AP
  2009-08-24 20:07 Kernel Panic in __ieee80211_tx with p43usb as AP Larry Finger
  2009-08-24 20:16 ` Johannes Berg
@ 2009-08-24 20:19 ` Bob Copeland
  1 sibling, 0 replies; 4+ messages in thread
From: Bob Copeland @ 2009-08-24 20:19 UTC (permalink / raw)
  To: Larry Finger; +Cc: Johannes Berg, Chr, wireless, John Linville

On Mon, Aug 24, 2009 at 4:07 PM, Larry Finger<Larry.Finger@lwfinger.net> wrote:
> static inline int drv_tx(struct ieee80211_local *local, struct sk_buff
> *skb)
> {
>        return local->ops->tx(&local->hw, skb);
> }
>
> Are there any suggest changes that would let me debug this problem
> without crashing the kernel?

Could be a callback into mac80211, e.g. ieee80211_get_tx_rate()
returning null (I haven't looked at any p54 code, I just know I've hit
one there before with ath5k).

-- 
Bob Copeland %% www.bobcopeland.com

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: Kernel Panic in __ieee80211_tx with p43usb as AP
@ 2009-08-24 20:33 Chunkeey
  0 siblings, 0 replies; 4+ messages in thread
From: Chunkeey @ 2009-08-24 20:33 UTC (permalink / raw)
  To: Larry Finger, Bob Copeland; +Cc: Chr, Johannes Berg, wireless, John Linville

> On Mon, Aug 24, 2009 at 4:07 PM, Larry Finger<Larry.Finger@lwfinger.net> wrote:
> > static inline int drv_tx(struct ieee80211_local *local, struct sk_buff
> > *skb)
> > {
> >        return local->ops->tx(&local->hw, skb);
> > }
> >
> > Are there any suggest changes that would let me debug this problem
> > without crashing the kernel?
> 
> Could be a callback into mac80211, e.g. ieee80211_get_tx_rate()
> returning null (I haven't looked at any p54 code, I just know I've hit
> one there before with ath5k).

huu. at this point the frame already has a valid rate.
I guessing the dump is missing some more lines and 
it crashes somewhere deep down in the driver.
But, I'm not yet sure where exactly... do you think
you can capture a full oops?

Regards,
   Chr
________________________________________________________________
Neu: WEB.DE Doppel-FLAT mit Internet-Flatrate + Telefon-Flatrate
für nur 19,99 Euro/mtl.!* http://produkte.web.de/go/02/


^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2009-08-24 20:33 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2009-08-24 20:07 Kernel Panic in __ieee80211_tx with p43usb as AP Larry Finger
2009-08-24 20:16 ` Johannes Berg
2009-08-24 20:19 ` Bob Copeland
2009-08-24 20:33 Chunkeey

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).