On Tue, 18 Dec 2018 11:20:03 +0300 Dan Carpenter <dan.carpenter@xxxxxxxxxx> wrote: > The strndup_user() function returns error pointers on error, and then > in the error handling we pass the error pointers to kfree(). It will > cause an Oops. > Looks good to me. I guess we should fix this too? From: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx> Subject: mm/util.c: fix strndup_user() comment The kerneldoc misdescribes strndup_user()'s return value. Cc: Dan Carpenter <dan.carpenter@xxxxxxxxxx> Cc: Timur Tabi <timur@xxxxxxxxxxxxx> Cc: Mihai Caraman <mihai.caraman@xxxxxxxxxxxxx> Cc: Kumar Gala <galak@xxxxxxxxxxxxxxxxxxx> Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx> --- mm/util.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) --- a/mm/util.c~mm-utilc-fix-strndup_user-comment +++ a/mm/util.c @@ -204,7 +204,7 @@ EXPORT_SYMBOL(vmemdup_user); * @s: The string to duplicate * @n: Maximum number of bytes to copy, including the trailing NUL. * - * Return: newly allocated copy of @s or %NULL in case of error + * Return: newly allocated copy of @s or an ERR_PTR() in case of error */ char *strndup_user(const char __user *s, long n) { _