Skip to content

Commit

Permalink
sys_prctl(): fix return of uninitialized value
Browse files Browse the repository at this point in the history
If none of the switch cases match, the PR_SET_PDEATHSIG and
PR_SET_DUMPABLE cases of the switch statement will never write to local
variable `error'.

Signed-off-by: Shi Weihua <shiwh@cn.fujitsu.com>
Cc: Andrew G. Morgan <morgan@kernel.org>
Acked-by: "Serge E. Hallyn" <serue@us.ibm.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
  • Loading branch information
shiwh authored and torvalds committed May 24, 2008
1 parent f99c900 commit 7b26655
Showing 1 changed file with 2 additions and 4 deletions.
6 changes: 2 additions & 4 deletions kernel/sys.c
Original file line number Diff line number Diff line change
Expand Up @@ -1652,7 +1652,7 @@ asmlinkage long sys_umask(int mask)
asmlinkage long sys_prctl(int option, unsigned long arg2, unsigned long arg3,
unsigned long arg4, unsigned long arg5)
{
long uninitialized_var(error);
long error = 0;

if (security_task_prctl(option, arg2, arg3, arg4, arg5, &error))
return error;
Expand Down Expand Up @@ -1701,9 +1701,7 @@ asmlinkage long sys_prctl(int option, unsigned long arg2, unsigned long arg3,
error = PR_TIMING_STATISTICAL;
break;
case PR_SET_TIMING:
if (arg2 == PR_TIMING_STATISTICAL)
error = 0;
else
if (arg2 != PR_TIMING_STATISTICAL)
error = -EINVAL;
break;

Expand Down

0 comments on commit 7b26655

Please sign in to comment.