ACK: [Precise PATCH] (pre-stable) b43: only reload config after successful initialization

Stefan Bader stefan.bader at canonical.com
Wed May 2 09:11:43 UTC 2012


On 30.04.2012 18:29, Tim Gardner wrote:
> From: Seth Forshee <seth.forshee at canonical.com>
> 
> Commit 2a19032 (b43: reload phy and bss settings after core restarts)
> introduced an unconditional call to b43_op_config() at the end of
> b43_op_start(). When firmware fails to load this can wedge the system.
> There's no need to reload the configuration after a failed
> initialization anyway, so only make the call if initialization was
> successful.
> 
> BugLink: http://bugs.launchpad.net/bugs/950295
> Cc: Felix Fietkau <nbd at openwrt.org>
> Cc: <stable at vger.kernel.org>
> Signed-off-by: Seth Forshee <seth.forshee at canonical.com>
> Signed-off-by: John W. Linville <linville at tuxdriver.com>
> ---
>  drivers/net/wireless/b43/main.c |   10 ++++++++--
>  1 file changed, 8 insertions(+), 2 deletions(-)
> 
> diff --git a/drivers/net/wireless/b43/main.c b/drivers/net/wireless/b43/main.c
> index c79e663..e4d6dc2 100644
> --- a/drivers/net/wireless/b43/main.c
> +++ b/drivers/net/wireless/b43/main.c
> @@ -4827,8 +4827,14 @@ static int b43_op_start(struct ieee80211_hw *hw)
>   out_mutex_unlock:
>  	mutex_unlock(&wl->mutex);
>  
> -	/* reload configuration */
> -	b43_op_config(hw, ~0);
> +	/*
> +	 * Configuration may have been overwritten during initialization.
> +	 * Reload the configuration, but only if initialization was
> +	 * successful. Reloading the configuration after a failed init
> +	 * may hang the system.
> +	 */
> +	if (!err)
> +		b43_op_config(hw, ~0);
>  
>  	return err;
>  }


-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 900 bytes
Desc: OpenPGP digital signature
URL: <https://lists.ubuntu.com/archives/kernel-team/attachments/20120502/a9f099ca/attachment.sig>


More information about the kernel-team mailing list