From: Larry Finger <Larry.Finger@lwfinger.net>
To: Eliad Peller <eliad@wizery.com>
Cc: Johannes Berg <johannes@sipsolutions.net>,
John Linville <linville@tuxdriver.com>,
wireless <linux-wireless@vger.kernel.org>
Subject: Re: Wireless problem in 3.4-rc5
Date: Wed, 02 May 2012 15:17:56 -0500 [thread overview]
Message-ID: <4FA19674.90804@lwfinger.net> (raw)
In-Reply-To: <CAB3XZEerHsNUr4p5rTu0msucKUnxXwFxwZVtONrkZ_czmgS+ig@mail.gmail.com>
On 05/02/2012 07:58 AM, Eliad Peller wrote:
> hi Larry,
>
> On Tue, May 1, 2012 at 10:58 PM, Larry Finger<Larry.Finger@lwfinger.net> wrote:
>> After upgrading to 3.4-rc5 from wireless-testing, one of my boxes fails to
>> scan and gets a "Network down" message for all wireless devices. The code in
>> 3.4-rc4 was OK, thus I bisected to find the offending commit. The one that
>> broke my wireless is commit 3a25a8c entitled "mac80211: add improved HW
>> queue control".
>>
>> On my main laptop, this patch causes no problems. On a 3rd box, a BCM4312
>> (b43) is OK, but an RTL8187L (rtl8187) also fails in the same manner.
>>
>> The problem is not in the configuration as I copied the one from the box
>> that works to the one that fails, and it still fails. The only difference is
>> that the working system has 2 CPUs and the ones that fail are uni-processor;
>> however, if I boot with maxcpus=1, my main machine still works.
>>
>> Any suggestions of things to try will be appreciated.
>>
> i'm not sure this is related to the problem you're facing, but the
> commit above seems to have some bug in which a packet might get
> enqueued on invalid queue (0xff) - please try this patch (compile
> tested only):
>
> diff --git a/net/mac80211/cfg.c b/net/mac80211/cfg.c
> index 3557354..ee815a9 100644
> --- a/net/mac80211/cfg.c
> +++ b/net/mac80211/cfg.c
> @@ -2106,7 +2106,8 @@ static int ieee80211_mgmt_tx(struct wiphy
> *wiphy, struct net_device *dev,
>
> IEEE80211_SKB_CB(skb)->flags = flags;
>
> - if (flags& IEEE80211_TX_CTL_TX_OFFCHAN)
> + if (local->hw.flags& IEEE80211_HW_QUEUE_CONTROL&&
> + flags& IEEE80211_TX_CTL_TX_OFFCHAN)
> IEEE80211_SKB_CB(skb)->hw_queue =
> local->hw.offchannel_tx_hw_queue;
>
> @@ -2151,8 +2152,9 @@ static int ieee80211_mgmt_tx(struct wiphy
> *wiphy, struct net_device *dev,
> /* modify cookie to prevent API mismatches */
> *cookie ^= 2;
> IEEE80211_SKB_CB(skb)->flags |= IEEE80211_TX_CTL_TX_OFFCHAN;
> - IEEE80211_SKB_CB(skb)->hw_queue =
> - local->hw.offchannel_tx_hw_queue;
> + if (local->hw.flags& IEEE80211_HW_QUEUE_CONTROL)
> + IEEE80211_SKB_CB(skb)->hw_queue =
> + local->hw.offchannel_tx_hw_queue;
> local->hw_roc_skb = skb;
> local->hw_roc_skb_for_status = skb;
> mutex_unlock(&local->mtx);
Sorry, but this patch does not fix my problem.
Larry
next prev parent reply other threads:[~2012-05-02 20:18 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-05-01 19:58 Wireless problem in 3.4-rc5 Larry Finger
2012-05-02 12:58 ` Eliad Peller
2012-05-02 20:17 ` Larry Finger [this message]
2012-05-07 11:30 ` Johannes Berg
2012-05-08 8:32 ` Eliad Peller
2012-05-08 9:00 ` Eliad Peller
2012-05-08 10:57 ` Johannes Berg
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=4FA19674.90804@lwfinger.net \
--to=larry.finger@lwfinger.net \
--cc=eliad@wizery.com \
--cc=johannes@sipsolutions.net \
--cc=linux-wireless@vger.kernel.org \
--cc=linville@tuxdriver.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.