This patch rearranges the code of function aim_write() of module aim-cdev.
It is needed to remove the error lable and make the code straighter.

Signed-off-by: Christian Gromm <christian.gr...@microchip.com>
---
 drivers/staging/most/aim-cdev/cdev.c |   22 ++++++----------------
 1 file changed, 6 insertions(+), 16 deletions(-)

diff --git a/drivers/staging/most/aim-cdev/cdev.c 
b/drivers/staging/most/aim-cdev/cdev.c
index 0ee2f08..e5ceb82 100644
--- a/drivers/staging/most/aim-cdev/cdev.c
+++ b/drivers/staging/most/aim-cdev/cdev.c
@@ -183,7 +183,6 @@ static int aim_close(struct inode *inode, struct file *filp)
 static ssize_t aim_write(struct file *filp, const char __user *buf,
                         size_t count, loff_t *offset)
 {
-       int ret, err;
        size_t actual_len;
        size_t max_len;
        ssize_t retval;
@@ -202,8 +201,8 @@ static ssize_t aim_write(struct file *filp, const char 
__user *buf,
        }
 
        if (unlikely(!c->dev)) {
-               err = -EPIPE;
-               goto error;
+               mutex_unlock(&c->io_mutex);
+               return -EPIPE;
        }
 
        max_len = c->cfg->buffer_size;
@@ -212,23 +211,14 @@ static ssize_t aim_write(struct file *filp, const char 
__user *buf,
 
        retval = copy_from_user(mbo->virt_address, buf, mbo->buffer_length);
        if (retval) {
-               err = -EIO;
-               goto error;
+               most_put_mbo(mbo);
+               mutex_unlock(&c->io_mutex);
+               return -EIO;
        }
 
-       ret = most_submit_mbo(mbo);
-       if (ret) {
-               pr_info("submitting MBO to core failed\n");
-               err = ret;
-               goto error;
-       }
+       most_submit_mbo(mbo);
        mutex_unlock(&c->io_mutex);
        return actual_len - retval;
-error:
-       if (mbo)
-               most_put_mbo(mbo);
-       mutex_unlock(&c->io_mutex);
-       return err;
 }
 
 /**
-- 
1.7.9.5

_______________________________________________
devel mailing list
de...@linuxdriverproject.org
http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel

Reply via email to