From dec6958332d04d27eae17e1f0508dab92a5028e4 Mon Sep 17 00:00:00 2001 From: Wei Yongjun Date: Mon, 5 Aug 2013 12:42:00 +0800 Subject: [PATCH] tile: fix missing unlock on error in tile_net_open() Add the missing unlock before return from function tile_net_open() in the error handling case. Introduced by commit 9601f62ef716c23da86b563169d6f1d9dfb09f4a. (tile: support multiple mPIPE shims in tilegx network driver) Signed-off-by: Wei Yongjun Acked-by: Chris Metcalf Signed-off-by: David S. Miller --- drivers/net/ethernet/tile/tilegx.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/drivers/net/ethernet/tile/tilegx.c b/drivers/net/ethernet/tile/tilegx.c index 907b5772fd552..5d2a719fc6882 100644 --- a/drivers/net/ethernet/tile/tilegx.c +++ b/drivers/net/ethernet/tile/tilegx.c @@ -1510,8 +1510,10 @@ static int tile_net_open(struct net_device *dev) /* Get the instance info. */ rc = gxio_mpipe_link_instance(dev->name); - if (rc < 0 || rc >= NR_MPIPE_MAX) + if (rc < 0 || rc >= NR_MPIPE_MAX) { + mutex_unlock(&tile_net_devs_for_channel_mutex); return -EIO; + } priv->instance = rc; instance = rc; -- 2.39.5