Search Linux Wireless

Re: [PATCH 3/3] wl12xx: remove unneeded locking

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Thu, 2010-08-26 at 13:30 +0200, ext Johannes Berg wrote:
> From: Johannes Berg <johannes.berg@xxxxxxxxx>
> 
> With the scan callback now being callable from
> any context, these unlocks/locks can go away.
> This makes the code easier to understand, since
> callers of these functions must no longer be
> aware that the mutex may be dropped.
> 
> As Stanislaw is working on iwlwifi scanning, I
> didn't change it to take advantage of the new
> mac80211 semantics.
> 
> Signed-off-by: Johannes Berg <johannes.berg@xxxxxxxxx>
> ---

[...]

> --- wireless-testing.orig/drivers/net/wireless/wl12xx/wl1271_main.c	2010-08-26 13:29:57.000000000 +0200
> +++ wireless-testing/drivers/net/wireless/wl12xx/wl1271_main.c	2010-08-26 13:30:03.000000000 +0200
> @@ -948,9 +948,7 @@ static void wl1271_op_remove_interface(s
>  		ieee80211_enable_dyn_ps(wl->vif);
>  
>  	if (wl->scan.state != WL1271_SCAN_STATE_IDLE) {
> -		mutex_unlock(&wl->mutex);
>  		ieee80211_scan_completed(wl->hw, true);
> -		mutex_lock(&wl->mutex);
>  		wl->scan.state = WL1271_SCAN_STATE_IDLE;
>  		kfree(wl->scan.scanned_ch);
>  		wl->scan.scanned_ch = NULL;
> --- wireless-testing.orig/drivers/net/wireless/wl12xx/wl1271_scan.c	2010-08-26 13:29:57.000000000 +0200
> +++ wireless-testing/drivers/net/wireless/wl12xx/wl1271_scan.c	2010-08-26 13:30:03.000000000 +0200
> @@ -215,9 +215,7 @@ void wl1271_scan_stm(struct wl1271 *wl)
>  		break;
>  
>  	case WL1271_SCAN_STATE_DONE:
> -		mutex_unlock(&wl->mutex);
>  		ieee80211_scan_completed(wl->hw, false);
> -		mutex_lock(&wl->mutex);
>  
>  		kfree(wl->scan.scanned_ch);
>  		wl->scan.scanned_ch = NULL;

Yes, the wl1271 part also looks good.  This definitely simplifies things
and makes the code more robust.


-- 
Cheers,
Luca.

--
To unsubscribe from this list: send the line "unsubscribe linux-wireless" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Linux Host AP]     [ATH6KL]     [Linux Bluetooth]     [Linux Netdev]     [Kernel Newbies]     [Linux Kernel]     [IDE]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux ATA RAID]     [Samba]     [Device Mapper]
  Powered by Linux