Commit 08662097 authored by Chaehyun Lim's avatar Chaehyun Lim Committed by Greg Kroah-Hartman

staging: wilc1000: use mutex instead of struct semaphore hSemScanReq

This patch replaces struct semaphore hSemScanReq with struct mutex
scan_req_lock. It is better to use mutex than semaphore.
Signed-off-by: default avatarChaehyun Lim <chaehyun.lim@gmail.com>
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
parent 589c667d
...@@ -451,7 +451,7 @@ static void CfgScanResult(enum scan_event scan_event, ...@@ -451,7 +451,7 @@ static void CfgScanResult(enum scan_event scan_event,
} else if (scan_event == SCAN_EVENT_DONE) { } else if (scan_event == SCAN_EVENT_DONE) {
refresh_scan(priv, 1, false); refresh_scan(priv, 1, false);
down(&(priv->hSemScanReq)); mutex_lock(&priv->scan_req_lock);
if (priv->pstrScanReq) { if (priv->pstrScanReq) {
cfg80211_scan_done(priv->pstrScanReq, false); cfg80211_scan_done(priv->pstrScanReq, false);
...@@ -459,9 +459,9 @@ static void CfgScanResult(enum scan_event scan_event, ...@@ -459,9 +459,9 @@ static void CfgScanResult(enum scan_event scan_event,
priv->bCfgScanning = false; priv->bCfgScanning = false;
priv->pstrScanReq = NULL; priv->pstrScanReq = NULL;
} }
up(&(priv->hSemScanReq)); mutex_unlock(&priv->scan_req_lock);
} else if (scan_event == SCAN_EVENT_ABORTED) { } else if (scan_event == SCAN_EVENT_ABORTED) {
down(&(priv->hSemScanReq)); mutex_lock(&priv->scan_req_lock);
if (priv->pstrScanReq) { if (priv->pstrScanReq) {
update_scan_time(); update_scan_time();
...@@ -471,7 +471,7 @@ static void CfgScanResult(enum scan_event scan_event, ...@@ -471,7 +471,7 @@ static void CfgScanResult(enum scan_event scan_event,
priv->bCfgScanning = false; priv->bCfgScanning = false;
priv->pstrScanReq = NULL; priv->pstrScanReq = NULL;
} }
up(&(priv->hSemScanReq)); mutex_unlock(&priv->scan_req_lock);
} }
} }
} }
...@@ -2307,7 +2307,7 @@ int wilc_init_host_int(struct net_device *net) ...@@ -2307,7 +2307,7 @@ int wilc_init_host_int(struct net_device *net)
priv->bInP2PlistenState = false; priv->bInP2PlistenState = false;
sema_init(&(priv->hSemScanReq), 1); mutex_init(&priv->scan_req_lock);
s32Error = wilc_init(net, &priv->hif_drv); s32Error = wilc_init(net, &priv->hif_drv);
if (s32Error) if (s32Error)
netdev_err(net, "Error while initializing hostinterface\n"); netdev_err(net, "Error while initializing hostinterface\n");
......
...@@ -130,7 +130,7 @@ struct wilc_priv { ...@@ -130,7 +130,7 @@ struct wilc_priv {
struct wilc_wfi_key *wilc_ptk[MAX_NUM_STA]; struct wilc_wfi_key *wilc_ptk[MAX_NUM_STA];
u8 wilc_groupkey; u8 wilc_groupkey;
/* semaphores */ /* semaphores */
struct semaphore hSemScanReq; struct mutex scan_req_lock;
/* */ /* */
bool gbAutoRateAdjusted; bool gbAutoRateAdjusted;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment