Re: [PATH v4] itimers: Remove bogus NULL pointer check in sys_getitimer()
From: Chen Gang
Date: Thu Jul 04 2013 - 21:29:36 EST
Hello Maintainers:
Is this patch under the normal work flow (or I should need a little more
patience) ?
Thanks.
On 06/25/2013 09:16 AM, Chen Gang wrote:
>
People might be tricked into assuming that the return value for a
>
failed NULL pointer check should be -EINVAL instead of -EFAULT.
>
>
Remove the misleading NULL pointer check to fix this nuisance.
>
>
Aside of that this patch fixes the problem of NOMMU kernels, where
>
a NULL pointer dereference is a valid operation. This allows to
>
boot NOMMU kernels without working around the shortcomings of the
>
getitimer() system call, which have been ignored since this NULL
>
pointer check was introduced in Linux 0.96a.
>
>
Signed-off-by: Chen Gang <gang.chen@xxxxxxxxxxx>
>
---
>
kernel/itimer.c | 13 ++++++-------
>
1 files changed, 6 insertions(+), 7 deletions(-)
>
>
diff --git a/kernel/itimer.c b/kernel/itimer.c
>
index 8d262b4..3b12271 100644
>
--- a/kernel/itimer.c
>
+++ b/kernel/itimer.c
>
@@ -102,15 +102,14 @@ int do_getitimer(int which, struct itimerval *value)
>
>
SYSCALL_DEFINE2(getitimer, int, which, struct itimerval __user *, value)
>
{
>
- int error = -EFAULT;
>
+ int error;
>
struct itimerval get_buffer;
>
>
- if (value) {
>
- error = do_getitimer(which, &get_buffer);
>
- if (!error &&
>
- copy_to_user(value, &get_buffer, sizeof(get_buffer)))
>
- error = -EFAULT;
>
- }
>
+ error = do_getitimer(which, &get_buffer);
>
+ if (!error &&
>
+ copy_to_user(value, &get_buffer, sizeof(get_buffer)))
>
+ error = -EFAULT;
>
+
>
return error;
>
}
>
>
--
Chen Gang
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at
http://vger.kernel.org/majordomo-info.html
Please read the FAQ at
http://www.tux.org/lkml/