[PATCH RESEND 1/2] stm class: Replace kmalloc + copy_from_user with memdup_user
Thorsten Blum
thorsten.blum at linux.dev
Mon May 25 02:36:51 PDT 2026
Gentle ping?
On Thu, Apr 02, 2026 at 06:59:35PM +0200, Thorsten Blum wrote:
> Replace kmalloc() followed by copy_from_user() with memdup_user() to
> simplify and improve stm_char_write().
>
> Allocate and copy only 'count' bytes instead of 'count + 1' since the
> extra byte is unused.
>
> Signed-off-by: Thorsten Blum <thorsten.blum at linux.dev>
> ---
> drivers/hwtracing/stm/core.c | 12 +++---------
> 1 file changed, 3 insertions(+), 9 deletions(-)
>
> diff --git a/drivers/hwtracing/stm/core.c b/drivers/hwtracing/stm/core.c
> index 37584e786bb5..49791024bb86 100644
> --- a/drivers/hwtracing/stm/core.c
> +++ b/drivers/hwtracing/stm/core.c
> @@ -645,15 +645,9 @@ static ssize_t stm_char_write(struct file *file, const char __user *buf,
> return err;
> }
>
> - kbuf = kmalloc(count + 1, GFP_KERNEL);
> - if (!kbuf)
> - return -ENOMEM;
> -
> - err = copy_from_user(kbuf, buf, count);
> - if (err) {
> - kfree(kbuf);
> - return -EFAULT;
> - }
> + kbuf = memdup_user(buf, count);
> + if (IS_ERR(kbuf))
> + return PTR_ERR(kbuf);
>
> pm_runtime_get_sync(&stm->dev);
>
More information about the linux-arm-kernel
mailing list