diff options
author | Vitaly Mayatskikh <v.mayatskih@gmail.com> | 2009-09-23 15:56:52 -0700 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2009-09-24 07:21:00 -0700 |
commit | b6fe2d117e98805ee76352e6468f87d494a97292 (patch) | |
tree | 3de99eb7652647000b53bca1f6ea740c926ccfca /kernel/signal.c | |
parent | dfe16dfa4ac178d9a10b489a73d535c6976e48d2 (diff) | |
download | blackbird-op-linux-b6fe2d117e98805ee76352e6468f87d494a97292.tar.gz blackbird-op-linux-b6fe2d117e98805ee76352e6468f87d494a97292.zip |
wait_noreap_copyout(): check for ->wo_info != NULL
Current behaviour of sys_waitid() looks odd. If user passes infop ==
NULL, sys_waitid() returns success. When user additionally specifies flag
WNOWAIT, sys_waitid() returns -EFAULT on the same conditions. When user
combines WNOWAIT with WCONTINUED, sys_waitid() again returns success.
This patch adds check for ->wo_info in wait_noreap_copyout().
User-visible change: starting from this commit, sys_waitid() always checks
infop != NULL and does not fail if it is NULL.
Signed-off-by: Vitaly Mayatskikh <v.mayatskih@gmail.com>
Reviewed-by: Oleg Nesterov <oleg@redhat.com>
Cc: Roland McGrath <roland@redhat.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'kernel/signal.c')
0 files changed, 0 insertions, 0 deletions