diff options
-rw-r--r-- | Documentation/feature-removal-schedule.txt | 8 | ||||
-rw-r--r-- | kernel/itimer.c | 5 |
2 files changed, 12 insertions, 1 deletions
diff --git a/Documentation/feature-removal-schedule.txt b/Documentation/feature-removal-schedule.txt index 0cad4803ffa..32fae81228f 100644 --- a/Documentation/feature-removal-schedule.txt +++ b/Documentation/feature-removal-schedule.txt | |||
@@ -529,3 +529,11 @@ When: 3.5 | |||
529 | Why: The old kmap_atomic() with two arguments is deprecated, we only | 529 | Why: The old kmap_atomic() with two arguments is deprecated, we only |
530 | keep it for backward compatibility for few cycles and then drop it. | 530 | keep it for backward compatibility for few cycles and then drop it. |
531 | Who: Cong Wang <amwang@redhat.com> | 531 | Who: Cong Wang <amwang@redhat.com> |
532 | |||
533 | ---------------------------- | ||
534 | |||
535 | What: setitimer accepts user NULL pointer (value) | ||
536 | When: 3.6 | ||
537 | Why: setitimer is not returning -EFAULT if user pointer is NULL. This | ||
538 | violates the spec. | ||
539 | Who: Sasikantha Babu <sasikanth.v19@gmail.com> | ||
diff --git a/kernel/itimer.c b/kernel/itimer.c index 22000c3db0d..c70369a74b5 100644 --- a/kernel/itimer.c +++ b/kernel/itimer.c | |||
@@ -284,8 +284,11 @@ SYSCALL_DEFINE3(setitimer, int, which, struct itimerval __user *, value, | |||
284 | if (value) { | 284 | if (value) { |
285 | if(copy_from_user(&set_buffer, value, sizeof(set_buffer))) | 285 | if(copy_from_user(&set_buffer, value, sizeof(set_buffer))) |
286 | return -EFAULT; | 286 | return -EFAULT; |
287 | } else | 287 | } else { |
288 | memset((char *) &set_buffer, 0, sizeof(set_buffer)); | 288 | memset((char *) &set_buffer, 0, sizeof(set_buffer)); |
289 | WARN_ONCE(1, "setitimer: new_value pointer is NULL." | ||
290 | " Misfeature support will be removed\n"); | ||
291 | } | ||
289 | 292 | ||
290 | error = do_setitimer(which, &set_buffer, ovalue ? &get_buffer : NULL); | 293 | error = do_setitimer(which, &set_buffer, ovalue ? &get_buffer : NULL); |
291 | if (error || !ovalue) | 294 | if (error || !ovalue) |