From: Oleg Nesterov Cleanup, remove unneeded double copying of current->blocked. Signed-off-by: Oleg Nesterov Signed-off-by: Andrew Morton --- kernel/signal.c | 8 ++++---- 1 files changed, 4 insertions(+), 4 deletions(-) diff -puN kernel/signal.c~sigprocmask-kill-unneeded-temp-var kernel/signal.c --- devel/kernel/signal.c~sigprocmask-kill-unneeded-temp-var 2006-01-16 20:02:42.000000000 -0800 +++ devel-akpm/kernel/signal.c 2006-01-16 20:02:42.000000000 -0800 @@ -2099,10 +2099,11 @@ long do_no_restart_syscall(struct restar int sigprocmask(int how, sigset_t *set, sigset_t *oldset) { int error; - sigset_t old_block; spin_lock_irq(¤t->sighand->siglock); - old_block = current->blocked; + if (oldset) + *oldset = current->blocked; + error = 0; switch (how) { case SIG_BLOCK: @@ -2119,8 +2120,7 @@ int sigprocmask(int how, sigset_t *set, } recalc_sigpending(); spin_unlock_irq(¤t->sighand->siglock); - if (oldset) - *oldset = old_block; + return error; } _