summary refs log tree commit diff
path: root/drivers
diff options
context:
space:
mode:
authorDan Carpenter <error27@gmail.com>2009-11-29 06:02:55 +0000
committerDavid S. Miller <davem@davemloft.net>2009-11-30 00:06:51 -0800
commit40be261dfd8bfba4baeff40168d44a6a4450ace1 (patch)
tree8ac8771778d4fbfaa8a1973bccaaea5dc8e1604b /drivers
parent3c91c7ae84966f992429e1e128c4936f22b89064 (diff)
downloadlinux-40be261dfd8bfba4baeff40168d44a6a4450ace1.tar.gz
wan: cosa: drop chan->wsem on error path
The other paths all drop chan->wsem.  This was found by a static
checker (smatch).

Signed-off-by: Dan Carpenter <error27@gmail.com>
Acked-by: Jan "Yenya" Kasprzak <kas@fi.muni.cz>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers')
-rw-r--r--drivers/net/wan/cosa.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/net/wan/cosa.c b/drivers/net/wan/cosa.c
index e2c33c06190b..8e25ca7080c7 100644
--- a/drivers/net/wan/cosa.c
+++ b/drivers/net/wan/cosa.c
@@ -907,6 +907,7 @@ static ssize_t cosa_write(struct file *file,
 			current->state = TASK_RUNNING;
 			chan->tx_status = 1;
 			spin_unlock_irqrestore(&cosa->lock, flags);
+			up(&chan->wsem);
 			return -ERESTARTSYS;
 		}
 	}