[PATCH] efi_runtime: Use memdup_user helper
Colin Ian King
colin.king at canonical.com
Mon Jul 3 08:15:48 UTC 2017
On 03/07/17 09:14, ivanhu wrote:
>
>
> On 07/03/2017 03:54 PM, Colin Ian King wrote:
>> On 03/07/17 08:48, Ivan Hu wrote:
>>> From: Geliang Tang <geliangtang at gmail.com>
>>>
>>> Sync up with kernel driver efi_test:
>>>
>>> efi/efi_test: Use memdup_user() helper
>>>
>>> Use memdup_user() helper instead of open-coding to simplify the code.
>>>
>>> Signed-off-by: Geliang Tang <geliangtang at gmail.com>
>>> Signed-off-by: Ivan Hu <ivan.hu at canonical.com>
>>> ---
>>> efi_runtime/efi_runtime.c | 11 +++--------
>>> 1 file changed, 3 insertions(+), 8 deletions(-)
>>>
>>> diff --git a/efi_runtime/efi_runtime.c b/efi_runtime/efi_runtime.c
>>> index 19b624c..6570a54 100644
>>> --- a/efi_runtime/efi_runtime.c
>>> +++ b/efi_runtime/efi_runtime.c
>>> @@ -90,18 +90,13 @@ copy_ucs2_from_user_len(efi_char16_t **dst,
>>> efi_char16_t __user *src,
>>> if (!access_ok(VERIFY_READ, src, 1))
>>> return -EFAULT;
>>> - buf = kmalloc(len, GFP_KERNEL);
>>> - if (!buf) {
>>> + buf = memdup_user(src, len);
>>> + if (IS_ERR(buf)) {
>>> *dst = NULL;
>>> - return -ENOMEM;
>>> + return PTR_ERR(buf);
>>> }
>>> *dst = buf;
>>> - if (copy_from_user(*dst, src, len)) {
>>> - kfree(buf);
>>> - return -EFAULT;
>>> - }
>>> -
>>> return 0;
>>> }
>>>
>> Ivan, this is great for the latest kernel, what do we do for backwards
>> compatibility in the fwts DKMS driver?
>>
>
> Colin, memdup_user has introduced for a very long time,since 2009. Looks
> like should not be a problem for the DKMS driver. What backward
> compatibility issue have you seen?
Ah, I hadn't realized that memdep_user was quite that old. No problem
then. Sorry for the noise.
Colin
>
> Ivan
>
>> Acked-by: Colin Ian King <colin.king at canonical.com>
>>
More information about the fwts-devel
mailing list