[PATCH] IB/mlx5: simplify set_param()
Dmitry Antipov <[email protected]>
| Newsgroups | org.kernel.vger.linux-rdma |
|---|---|
| Message-ID | <[email protected]> |
Simplify 'set_param()' by using the convenient 'kstrtou32_from_user()'. Signed-off-by: Dmitry Antipov <[email protected]> --- drivers/infiniband/hw/mlx5/cong.c | 16 +++------------- 1 file changed, 3 insertions(+), 13 deletions(-) diff --git a/drivers/infiniband/hw/mlx5/cong.c b/drivers/infiniband/hw/mlx5/cong.c index d0edf83a2f20..98c90d0dbab4 100644 --- a/drivers/infiniband/hw/mlx5/cong.c +++ b/drivers/infiniband/hw/mlx5/cong.c @@ -373,22 +373,12 @@ static ssize_t set_param(struct file *filp, const char __user *buf, { struct mlx5_ib_dbg_param *param = filp->private_data; int offset = param->offset; - char lbuf[11] = { }; u32 var; int ret; - if (count > sizeof(lbuf)) - return -EINVAL; - - if (copy_from_user(lbuf, buf, count)) - return -EFAULT; - - lbuf[sizeof(lbuf) - 1] = '\0'; - - if (kstrtou32(lbuf, 0, &var)) - return -EINVAL; - - ret = mlx5_ib_set_cc_params(param->dev, param->port_num, offset, var); + ret = kstrtou32_from_user(buf, count, 0, &var); + if (!ret) + ret = mlx5_ib_set_cc_params(param->dev, param->port_num, offset, var); return ret ? ret : count; } -- 2.55.0