Re: Regression in 2.6.27-rcX caused by commit bc19d6e0b74ef03a3baf035412c95192b54dfc6f

From: Carlos Corbacho
Date: Tue Sep 16 2008 - 16:44:45 EST


> diff --git a/drivers/net/wireless/b43/rfkill.c
> b/drivers/net/wireless/b43/rfkill.c
> index fec5645..e8b2acb 100644
> --- a/drivers/net/wireless/b43/rfkill.c
> +++ b/drivers/net/wireless/b43/rfkill.c
> @@ -49,21 +49,18 @@ static void b43_rfkill_update_state(struct b43_wldev
> *dev)
> struct b43_rfkill *rfk = &(dev->wl->rfkill);
>
> if (!dev->radio_hw_enable) {
> - rfk->rfkill->state = RFKILL_STATE_HARD_BLOCKED;
> + rfkill_force_state(rfk->rfkill, RFKILL_STATE_HARD_BLOCKED);
> return;
> }
>
> if (!dev->phy.radio_on)
> - rfk->rfkill->state = RFKILL_STATE_SOFT_BLOCKED;
> + rfkill_force_state(rfk->rfkill, RFKILL_STATE_SOFT_BLOCKED);
> else
> - rfk->rfkill->state = RFKILL_STATE_UNBLOCKED;
> -
> + rfkill_force_state(rfk->rfkill, RFKILL_STATE_UNBLOCKED);
> }

Just this should be enough to fix the regression for 2.6.27 (and should be
trivial to port to b43legacy) in the immediate term (I was planning to
send something similar).

The rest of the patch is out-of-scope for 2.6.27, but is definitely along
he right lines, IMHO (and it would be good if we can get a working version
of it in to 2.6.28). I may try and look at it later, as I do have my b43
hardware handy.

-Carlos
--
E-Mail: carlos@xxxxxxxxxxxxxxxxxxx
Web: strangeworlds.co.uk
GPG Key ID: 0x23EE722D
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/