Michael Buesch wrote:
> This patch fixes the parsing of the RX data header channel field.
>
> The current code parses the header incorrectly and passes a wrong
> channel number and frequency for each frame to mac80211.
> The FIXMEs added by this patch don't matter for now as the code
> where they live won't get executed anyway. They will be fixed later.
>
> Signed-off-by: Michael Buesch <[EMAIL PROTECTED]>
>
> ---
>
> John, as this is a bugfix, it should go into 2.6.24 if still possible.
>
> Index: wireless-2.6/drivers/net/wireless/b43/xmit.c
> ===================================================================
> --- wireless-2.6.orig/drivers/net/wireless/b43/xmit.c 2007-12-30
> 20:30:03.000000000 +0100
> +++ wireless-2.6/drivers/net/wireless/b43/xmit.c 2008-01-02
> 18:13:15.000000000 +0100
> @@ -549,21 +549,32 @@ void b43_rx(struct b43_wldev *dev, struc
> switch (chanstat & B43_RX_CHAN_PHYTYPE) {
> case B43_PHYTYPE_A:
> status.phymode = MODE_IEEE80211A;
> - status.freq = chanid;
> - status.channel = b43_freq_to_channel_a(chanid);
> - break;
> - case B43_PHYTYPE_B:
> - status.phymode = MODE_IEEE80211B;
> - status.freq = chanid + 2400;
> - status.channel = b43_freq_to_channel_bg(chanid + 2400);
> + B43_WARN_ON(1);
> + /* FIXME: We don't really know which value the "chanid"
> contains.
> + * So the following assignment might be wrong. */
> + status.channel = chanid;
> + status.freq = b43_channel_to_freq_5ghz(status.channel);
> break;
Shouldn't you just drop this case? No B PHY devices will ever use b43 and the
default branch will
issue the WARN_ON anyway.
Larry
_______________________________________________
Bcm43xx-dev mailing list
[email protected]
https://lists.berlios.de/mailman/listinfo/bcm43xx-dev