linux-wireless.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Michael Buesch <mb@bu3sch.de>
To: Johannes Berg <johannes@sipsolutions.net>
Cc: John Linville <linville@tuxdriver.com>,
	David Miller <davem@davemloft.net>,
	Kalle Valo <kalle.valo@iki.fi>,
	Dave Young <hidave.darkstar@gmail.com>,
	linux-wireless <linux-wireless@vger.kernel.org>
Subject: Re: [PATCH] b43: fix ieee80211_rx() context
Date: Sun, 11 Oct 2009 12:26:42 +0200	[thread overview]
Message-ID: <200910111226.44778.mb@bu3sch.de> (raw)
In-Reply-To: <1255256361.4095.56.camel@johannes.local>

On Sunday 11 October 2009 12:19:21 Johannes Berg wrote:
> Due to the way it interacts with the networking
> stack and other parts of mac80211, ieee80211_rx()
> must be called with disabled softirqs.

Is this stated in the documentation somewhere?

> Michael, the former maintainer of this driver,
> has refused to fix the problem this way instead
> proposing a much more invasive patch that could
> not even be proved correct wrt. locking inside
> mac80211. Regardless of that, he believes this
> to be a bug in mac80211, and has also publicly
> stated [1] that he does not care about this even
> though it is a regression introduced by his own
> patches.

What if we leave slander out of the commit messages?

> Since nobody else seems to be wanting to fix the
> problem, I'll just fix it for the benefit of the
> many users of this driver.
> 
> [1] http://thread.gmane.org/gmane.linux.kernel.wireless.general/39440/focus=40266
> 
> Reported-by: Dave Young <hidave.darkstar@gmail.com>
> Signed-off-by: Johannes Berg <johannes@sipsolutions.net>
> ---
>  drivers/net/wireless/b43/xmit.c |    3 +++
>  1 file changed, 3 insertions(+)
> 
> --- wireless-testing.orig/drivers/net/wireless/b43/xmit.c	2009-10-11 12:11:50.000000000 +0200
> +++ wireless-testing/drivers/net/wireless/b43/xmit.c	2009-10-11 12:12:06.000000000 +0200
> @@ -690,7 +690,10 @@ void b43_rx(struct b43_wldev *dev, struc
>  	}
>  
>  	memcpy(IEEE80211_SKB_RXCB(skb), &status, sizeof(status));
> +
> +	local_bh_disable();
>  	ieee80211_rx(dev->wl->hw, skb);
> +	local_bh_enable();
>  
>  #if B43_DEBUG
>  	dev->rx_count++;



-- 
Greetings, Michael.

  reply	other threads:[~2009-10-11 10:27 UTC|newest]

Thread overview: 15+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-10-11 10:19 [PATCH] b43: fix ieee80211_rx() context Johannes Berg
2009-10-11 10:26 ` Michael Buesch [this message]
2009-10-11 10:31   ` Johannes Berg
2009-10-11 10:35     ` Michael Buesch
2009-10-12  7:27     ` Holger Schurig
2009-10-11 10:39 ` David Miller
2009-10-11 11:53   ` Dave Young
2009-10-11 15:59 ` Kalle Valo
2009-10-11 16:02   ` Johannes Berg
2009-10-11 16:08     ` Kalle Valo
2009-10-12  3:08       ` David Miller
2009-10-12  7:49         ` Kalle Valo
2009-10-12 12:29           ` Luciano Coelho
2009-10-12 13:38         ` John W. Linville
2009-10-12 20:08           ` David Miller

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=200910111226.44778.mb@bu3sch.de \
    --to=mb@bu3sch.de \
    --cc=davem@davemloft.net \
    --cc=hidave.darkstar@gmail.com \
    --cc=johannes@sipsolutions.net \
    --cc=kalle.valo@iki.fi \
    --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 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).