Message ID | 20230815114815.1551171-1-ruanjinjie@huawei.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | [-next] ublk: Switch to memdup_user_nul() helper | expand |
On Tue, Aug 15, 2023 at 07:48:14PM +0800, Ruan Jinjie wrote: > Use memdup_user_nul() helper instead of open-coding > to simplify the code. > > Signed-off-by: Ruan Jinjie <ruanjinjie@huawei.com> > --- > drivers/block/ublk_drv.c | 11 +++-------- > 1 file changed, 3 insertions(+), 8 deletions(-) > > diff --git a/drivers/block/ublk_drv.c b/drivers/block/ublk_drv.c > index 85a81ee556d5..fa7e6955eb3b 100644 > --- a/drivers/block/ublk_drv.c > +++ b/drivers/block/ublk_drv.c > @@ -2743,14 +2743,9 @@ static int ublk_ctrl_uring_cmd_permission(struct ublk_device *ub, > if (header->len < header->dev_path_len) > return -EINVAL; > > - dev_path = kmalloc(header->dev_path_len + 1, GFP_KERNEL); > - if (!dev_path) > - return -ENOMEM; > - > - ret = -EFAULT; > - if (copy_from_user(dev_path, argp, header->dev_path_len)) > - goto exit; > - dev_path[header->dev_path_len] = 0; > + dev_path = memdup_user_nul(argp, header->dev_path_len); > + if (IS_ERR(dev_path)) > + return PTR_ERR(dev_path); Nice cleanup: Reviewed-by: Ming Lei <ming.lei@redhat.com> Thanks, Ming
On Tue, 15 Aug 2023 19:48:14 +0800, Ruan Jinjie wrote: > Use memdup_user_nul() helper instead of open-coding > to simplify the code. > > Applied, thanks! [1/1] ublk: Switch to memdup_user_nul() helper commit: 306d74055754976f6bbe67aef60fe1022c6b76e0 Best regards,
diff --git a/drivers/block/ublk_drv.c b/drivers/block/ublk_drv.c index 85a81ee556d5..fa7e6955eb3b 100644 --- a/drivers/block/ublk_drv.c +++ b/drivers/block/ublk_drv.c @@ -2743,14 +2743,9 @@ static int ublk_ctrl_uring_cmd_permission(struct ublk_device *ub, if (header->len < header->dev_path_len) return -EINVAL; - dev_path = kmalloc(header->dev_path_len + 1, GFP_KERNEL); - if (!dev_path) - return -ENOMEM; - - ret = -EFAULT; - if (copy_from_user(dev_path, argp, header->dev_path_len)) - goto exit; - dev_path[header->dev_path_len] = 0; + dev_path = memdup_user_nul(argp, header->dev_path_len); + if (IS_ERR(dev_path)) + return PTR_ERR(dev_path); ret = -EINVAL; switch (_IOC_NR(cmd->cmd_op)) {
Use memdup_user_nul() helper instead of open-coding to simplify the code. Signed-off-by: Ruan Jinjie <ruanjinjie@huawei.com> --- drivers/block/ublk_drv.c | 11 +++-------- 1 file changed, 3 insertions(+), 8 deletions(-)