lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <d51e11fa-54b0-41f4-9b06-95b46094de39@ursulin.net>
Date: Wed, 10 Sep 2025 11:09:21 +0100
From: Tvrtko Ursulin <tursulin@...ulin.net>
To: Alex Deucher <alexdeucher@...il.com>
Cc: Thorsten Blum <thorsten.blum@...ux.dev>,
 Alex Deucher <alexander.deucher@....com>,
 Christian König <christian.koenig@....com>,
 David Airlie <airlied@...il.com>, Simona Vetter <simona@...ll.ch>,
 amd-gfx@...ts.freedesktop.org, dri-devel@...ts.freedesktop.org,
 linux-kernel@...r.kernel.org
Subject: Re: [PATCH] drm/amdgpu: Replace kzalloc + copy_from_user with
 memdup_user


On 09/09/2025 14:36, Alex Deucher wrote:
> On Tue, Sep 9, 2025 at 4:17 AM Tvrtko Ursulin <tursulin@...ulin.net> wrote:
>>
>>
>> On 08/09/2025 22:15, Thorsten Blum wrote:
>>> Replace kzalloc() followed by copy_from_user() with memdup_user() to
>>> improve and simplify ta_if_load_debugfs_write() and
>>> ta_if_invoke_debugfs_write().
>>>
>>> No functional changes intended.
>>>
>>> Signed-off-by: Thorsten Blum <thorsten.blum@...ux.dev>
>>> ---
>>>    drivers/gpu/drm/amd/amdgpu/amdgpu_psp_ta.c | 20 ++++++--------------
>>>    1 file changed, 6 insertions(+), 14 deletions(-)
>>>
>>> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_psp_ta.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_psp_ta.c
>>> index 38face981c3e..6e8aad91bcd3 100644
>>> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_psp_ta.c
>>> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_psp_ta.c
>>> @@ -171,13 +171,9 @@ static ssize_t ta_if_load_debugfs_write(struct file *fp, const char *buf, size_t
>>>
>>>        copy_pos += sizeof(uint32_t);
>>>
>>> -     ta_bin = kzalloc(ta_bin_len, GFP_KERNEL);
>>> -     if (!ta_bin)
>>> -             return -ENOMEM;
>>> -     if (copy_from_user((void *)ta_bin, &buf[copy_pos], ta_bin_len)) {
>>> -             ret = -EFAULT;
>>> -             goto err_free_bin;
>>> -     }
>>> +     ta_bin = memdup_user(&buf[copy_pos], ta_bin_len);
>>> +     if (IS_ERR(ta_bin))
>>> +             return PTR_ERR(ta_bin);
>>>
>>>        /* Set TA context and functions */
>>>        set_ta_context_funcs(psp, ta_type, &context);
>>> @@ -327,13 +323,9 @@ static ssize_t ta_if_invoke_debugfs_write(struct file *fp, const char *buf, size
>>>                return -EFAULT;
>>>        copy_pos += sizeof(uint32_t);
>>>
>>> -     shared_buf = kzalloc(shared_buf_len, GFP_KERNEL);
>>> -     if (!shared_buf)
>>> -             return -ENOMEM;
>>> -     if (copy_from_user((void *)shared_buf, &buf[copy_pos], shared_buf_len)) {
>>> -             ret = -EFAULT;
>>> -             goto err_free_shared_buf;
>>> -     }
>>> +     shared_buf = memdup_user(&buf[copy_pos], shared_buf_len);
>>> +     if (IS_ERR(shared_buf))
>>> +             return PTR_ERR(shared_buf);
>>>
>>>        set_ta_context_funcs(psp, ta_type, &context);
>>>
>>
>> More complete than the one I sent in June^1.
> 
> I never received this series.  I didn't see it in patchwork either.
> Seems it never made it to amd-gfx.  Sorry I missed it. I've applied
> the applicable patches now.

Thank you and no worries, it wasn't anything urgent.

Regards,

Tvrtko

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ