linux-wireless.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Helmut Schaa <helmut.schaa@googlemail.com>
To: Ivo van Doorn <ivdoorn@gmail.com>
Cc: "John W. Linville" <linville@tuxdriver.com>,
	linux-wireless@vger.kernel.org, users@rt2x00.serialmonkey.com
Subject: Re: [PATCH 8/9] rt2x00: Fix header_length in rt2x00lib_txdone
Date: Tue, 16 Nov 2010 16:36:27 +0100	[thread overview]
Message-ID: <201011161636.27245.helmut.schaa@googlemail.com> (raw)
In-Reply-To: <201011131912.55384.IvDoorn@gmail.com>

Am Samstag 13 November 2010 schrieb Ivo van Doorn:
> From: RA-Jay Hung <Jay_Hung@ralinktech.com>
> 
> Put the assignment of header_length after pull out extra tx headroom

Thanks, this fixes an occasional panic for me in AP mode:

[  133.980000] skb_under_panic: text:81933574 len:1550 put:16 head:80a86800 data:80a867fc tail:0x80a86e0a end:0x80a86ea0 dev:wlan0
[  134.010000] Kernel bug detected[#1]:
[  134.010000] Cpu 0
[  134.010000] $ 0   : 00000000 80320000 00000089 00000001
[  134.010000] $ 4   : 8020559c 00002a63 00000001 00002a63
[  134.010000] $ 8   : 00000020 00000001 00000001 0000000a
[  134.010000] $12   : 000000cd 00000009 00000000 3a699d00
[  134.010000] $16   : 81909d00 80fac2f8 818f4aa8 80e7fba0
[  134.010000] $20   : 81909d00 819036f8 819036e0 00000002
[  134.010000] $24   : 00000000 80103130                  
[  134.010000] $28   : 80e7e000 80e7fb58 00000001 8012c4f0
[  134.010000] Hi    : 00000000
[  134.010000] Lo    : cbd20000
[  134.010000] epc   : 8012c4f0 skb_push+0x6c/0x88
[  134.010000]     Not tainted
[  134.010000] ra    : 8012c4f0 skb_push+0x6c/0x88
[  134.010000] Status: 1000e403    KERNEL EXL IE 
[  134.010000] Cause : 10800024
[  134.010000] PrId  : 0001964c (MIPS 24Kc)
[  134.010000] Modules linked in: rt2800pci rt2800lib rt2x00soc rt2x00pci rt2x00lib mac80211 eeprom_93cx6 crc_itu_t crc_ccitt cfg80211 compat arc4 aes_generic deflate ecb cbc
[  134.010000] Process irq/6-rt2800_wm (pid: 794, threadinfo=80e7e000, task=819811e0, tls=00000000)
[  134.010000] Stack : 00005220 81933574 0000060e 00000010 80a86800 80a867fc 80a86e0a 80a86ea0
[  134.010000]         81979000 81909d00 819036f8 81933574 80840000 819036f8 00000000 00000041
[  134.010000]         8020f480 819a9a80 0000be88 00000002 001a05fc 00800030 00040000 0000000d
[  134.010000]         00020007 00020005 00000003 00040000 00000006 00000004 001a0021 00000008
[  134.010000]         819036f8 819036f8 819036e0 818f4aa8 00000000 81931cfc 80e7fc78 80f1831c
[  134.010000]         ...
[  134.010000] Call Trace:
[  134.010000] [<8012c4f0>] skb_push+0x6c/0x88
[  134.010000] [<81933574>] rt2x00queue_write_tx_frame+0x218/0x344 [rt2x00lib]
[  134.010000] [<81931cfc>] rt2x00mac_tx+0x258/0x2d4 [rt2x00lib]
[  134.010000] [<80f19fa8>] __ieee80211_tx+0x14c/0x1e4 [mac80211]
[  134.010000] [<80f1a118>] ieee80211_tx+0xd8/0x25c [mac80211]
[  134.010000] [<80f1ae58>] ieee80211_tx_pending+0x11c/0x26c [mac80211]
[  134.010000] [<8001e444>] tasklet_action+0x88/0xe4
[  134.010000] [<8001ec10>] __do_softirq+0xb0/0x148
[  134.010000] [<8001ecf0>] do_softirq+0x48/0x6c
[  134.010000] [<8001ef78>] local_bh_enable+0x8c/0xa8
[  134.010000] [<81930414>] rt2x00lib_rxdone+0x2d0/0x320 [rt2x00lib]
[  134.010000] [<80eee2ec>] rt2x00pci_initialize+0x24c/0x270 [rt2x00pci]
[  134.010000] 
[  134.010000] 
[  134.010000] Code: afa9001c  0c001571  afa20020 <0200000d> 0804b13d  00000000  8fbf002c  01001021  03e00008 

Helmut

> Signed-off-by: RA-Jay Hung <jay_hung@ralinktech.com>
> Signed-off-by: Ivo van Doorn <IvDoorn@gmail.com>
> ---
>  drivers/net/wireless/rt2x00/rt2x00dev.c |    8 ++++++--
>  1 files changed, 6 insertions(+), 2 deletions(-)
> 
> diff --git a/drivers/net/wireless/rt2x00/rt2x00dev.c b/drivers/net/wireless/rt2x00/rt2x00dev.c
> index 3afa2a3..c879f9a 100644
> --- a/drivers/net/wireless/rt2x00/rt2x00dev.c
> +++ b/drivers/net/wireless/rt2x00/rt2x00dev.c
> @@ -250,10 +250,9 @@ void rt2x00lib_txdone(struct queue_entry *entry,
>  	struct ieee80211_tx_info *tx_info = IEEE80211_SKB_CB(entry->skb);
>  	struct skb_frame_desc *skbdesc = get_skb_frame_desc(entry->skb);
>  	enum data_queue_qid qid = skb_get_queue_mapping(entry->skb);
> -	unsigned int header_length = ieee80211_get_hdrlen_from_skb(entry->skb);
> +	unsigned int header_length, i;
>  	u8 rate_idx, rate_flags, retry_rates;
>  	u8 skbdesc_flags = skbdesc->flags;
> -	unsigned int i;
>  	bool success;
>  
>  	/*
> @@ -272,6 +271,11 @@ void rt2x00lib_txdone(struct queue_entry *entry,
>  	skbdesc->flags &= ~SKBDESC_DESC_IN_SKB;
>  
>  	/*
> +	 * Determine the length of 802.11 header.
> +	 */
> +	header_length = ieee80211_get_hdrlen_from_skb(entry->skb);
> +
> +	/*
>  	 * Remove L2 padding which was added during
>  	 */
>  	if (test_bit(DRIVER_REQUIRE_L2PAD, &rt2x00dev->flags))
> 


  parent reply	other threads:[~2010-11-16 15:37 UTC|newest]

Thread overview: 36+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-11-13 18:08 [PATCH 1/9] rt2x00: Increase REGISTER_BUSY_COUNT Ivo van Doorn
2010-11-13 18:09 ` [PATCH 2/9] rt2x00: Add initial support for RT3370/RT3390 devices Ivo van Doorn
2010-11-13 18:10   ` [PATCH 3/9] rt2x00: Clean up Kconfig for RT2800 devices Ivo van Doorn
2010-11-13 18:10     ` [PATCH 4/9] rt2x00: Remove RT30XX Kconfig variables Ivo van Doorn
2010-11-13 18:10       ` [PATCH 5/9] rt2x00: Remove unneccessary internal Kconfig symbols Ivo van Doorn
2010-11-13 18:11         ` [PATCH 6/9] rt2x00: Use ioremap for SoC devices instead of KSEG1ADDR Ivo van Doorn
2010-11-13 18:11           ` [PATCH 7/9] rt2x00: Fix rt2800 USB TX Path DMA issue Ivo van Doorn
2010-11-13 18:12             ` [PATCH 8/9] rt2x00: Fix header_length in rt2x00lib_txdone Ivo van Doorn
2010-11-13 18:13               ` [PATCH 9/9] rt2x00: Modify rt2x00queue_remove_l2pad to make skb->data two-byte alignment Ivo van Doorn
2010-11-16 15:45                 ` Helmut Schaa
2010-11-17  8:46                   ` Helmut Schaa
2010-11-17 10:16                     ` RA-Jay Hung
2010-11-17 10:48                       ` Helmut Schaa
2010-11-17 15:07                         ` John W. Linville
2010-11-17 15:34                           ` Gertjan van Wingerde
2010-11-17 16:41                             ` Helmut Schaa
2010-11-18  1:47                               ` [rt2x00-users] " David Ellingsworth
2010-11-22  7:00                               ` Gertjan van Wingerde
2010-11-22  8:14                                 ` RA-Jay Hung
2010-11-22 10:05                                   ` Gertjan van Wingerde
2010-11-22 10:22                                     ` Helmut Schaa
2010-11-16 15:36               ` Helmut Schaa [this message]
2010-11-15  9:45             ` [PATCH 7/9] rt2x00: Fix rt2800 USB TX Path DMA issue Walter Goldens
2010-11-16  1:59               ` RA-Jay Hung
2010-11-16 15:59               ` Johannes Stezenbach
2010-11-16 16:11                 ` Helmut Schaa
2010-11-16 16:34                   ` Johannes Stezenbach
2010-11-16 16:42                     ` Helmut Schaa
2010-11-16 16:53                       ` Johannes Stezenbach
2010-11-16 17:00                         ` Helmut Schaa
     [not found]                           ` <AANLkTi=ANfE3s8RUmS5=qyofqHM2geRnatK-eCUjovEc@mail.gmail.com>
2010-11-16 19:06                             ` Johannes Stezenbach
2010-11-16 19:23                               ` Ivo Van Doorn
2010-11-16 19:26                                 ` Johannes Berg
2010-11-16 19:33                                   ` Ivo Van Doorn
2010-11-14  8:59     ` [PATCH 3/9] rt2x00: Clean up Kconfig for RT2800 devices Julian Calaby
2010-11-14  9:00       ` Julian Calaby

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=201011161636.27245.helmut.schaa@googlemail.com \
    --to=helmut.schaa@googlemail.com \
    --cc=ivdoorn@gmail.com \
    --cc=linux-wireless@vger.kernel.org \
    --cc=linville@tuxdriver.com \
    --cc=users@rt2x00.serialmonkey.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 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).