[PATCH] net: consolidate lock/unlock into unlock_wait

From: Nicholas Mc Guire
Date: Fri Mar 18 2016 - 05:27:52 EST


The spin_lock()/spin_unlock() is synchronizing on the adapter->work_lock
as the comment also suggests, which is equivalent to spin_unlock_wait()
but the later should be more efficient.

Signed-off-by: Nicholas Mc Guire <hofrat@xxxxxxxxx>
---

Problem located by coccinelle spatch

Patch was compile tested with: x86_64_defconfig + CONFIG_CHELSIO_T1=m

Patch is against linux-next (localversion-next is next-20160318)

drivers/net/ethernet/chelsio/cxgb/cxgb2.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/net/ethernet/chelsio/cxgb/cxgb2.c b/drivers/net/ethernet/chelsio/cxgb/cxgb2.c
index f5f1b0b..c5a38dc 100644
--- a/drivers/net/ethernet/chelsio/cxgb/cxgb2.c
+++ b/drivers/net/ethernet/chelsio/cxgb/cxgb2.c
@@ -282,8 +282,8 @@ static int cxgb_close(struct net_device *dev)
!(adapter->open_device_map & PORT_MASK)) {
/* Stop statistics accumulation. */
smp_mb__after_atomic();
- spin_lock(&adapter->work_lock); /* sync with update task */
- spin_unlock(&adapter->work_lock);
+ /* sync with update task */
+ spin_unlock_wait(&adapter->work_lock);
cancel_mac_stats_update(adapter);
}

--
2.1.4