Added missing up().
--- a/master/cdev.c Wed Sep 24 10:28:59 2008 +0000
+++ b/master/cdev.c Mon Sep 29 09:51:48 2008 +0000
@@ -518,8 +518,10 @@
}
if (copy_to_user((void __user *) data.target, domain->data,
- domain->data_size))
- return -EFAULT;
+ domain->data_size)) {
+ up(&master->master_sem);
+ return -EFAULT;
+ }
up(&master->master_sem);
return 0;
@@ -809,7 +811,6 @@
request.req.data_size = data.data_size;
ecrt_sdo_request_write(&request.req);
-
if (down_interruptible(&master->master_sem))
return -EINTR;