Skip to content

Commit

Permalink
staging: most: rearrange function aim_write
Browse files Browse the repository at this point in the history
This patch straightens and rearranges the code of function aim_write()
of module aim-cdev.

Signed-off-by: Christian Gromm <christian.gromm@microchip.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
  • Loading branch information
Christian Gromm authored and Greg Kroah-Hartman committed Feb 8, 2016
1 parent f45b0fb commit 5adf5dc
Showing 1 changed file with 14 additions and 18 deletions.
32 changes: 14 additions & 18 deletions drivers/staging/most/aim-cdev/cdev.c
Original file line number Diff line number Diff line change
Expand Up @@ -183,10 +183,9 @@ 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;
int ret;
size_t actual_len;
size_t max_len;
ssize_t retval;
struct mbo *mbo = NULL;
struct aim_channel *c = filp->private_data;

Expand All @@ -202,33 +201,30 @@ static ssize_t aim_write(struct file *filp, const char __user *buf,
}

if (unlikely(!c->dev)) {
err = -EPIPE;
goto error;
ret = -EPIPE;
goto unlock;
}

max_len = c->cfg->buffer_size;
actual_len = min(count, max_len);
mbo->buffer_length = actual_len;

retval = copy_from_user(mbo->virt_address, buf, mbo->buffer_length);
if (retval) {
err = -EIO;
goto error;
if (copy_from_user(mbo->virt_address, buf, mbo->buffer_length)) {
ret = -EFAULT;
goto put_mbo;
}

ret = most_submit_mbo(mbo);
if (ret) {
pr_info("submitting MBO to core failed\n");
err = ret;
goto error;
}
if (ret)
goto put_mbo;

mutex_unlock(&c->io_mutex);
return actual_len - retval;
error:
if (mbo)
most_put_mbo(mbo);
return actual_len;
put_mbo:
most_put_mbo(mbo);
unlock:
mutex_unlock(&c->io_mutex);
return err;
return ret;
}

/**
Expand Down

0 comments on commit 5adf5dc

Please sign in to comment.