} else if(!(ka->sa.sa_flags & SA_NODEFER)){ 
} else { 
static int handle_signal(struct pt_regs *regs, unsigned long signr,			 struct k_sigaction *ka, siginfo_t *info,			 sigset_t *oldset){	unsigned long sp;	int err;	/* Always make any pending restarted system calls return -EINTR */	current_thread_info()->restart_block.fn = do_no_restart_syscall;	/* Did we come from a system call? */	if(PT_REGS_SYSCALL_NR(regs) >= 0){		/* If so, check system call restarting.. */		switch(PT_REGS_SYSCALL_RET(regs)){		case -ERESTART_RESTARTBLOCK:		case -ERESTARTNOHAND:			PT_REGS_SYSCALL_RET(regs) = -EINTR;			break;		case -ERESTARTSYS:			if (!(ka->sa.sa_flags & SA_RESTART)) {				PT_REGS_SYSCALL_RET(regs) = -EINTR;				break;			}		/* fallthrough */		case -ERESTARTNOINTR:			PT_REGS_RESTART_SYSCALL(regs);			PT_REGS_ORIG_SYSCALL(regs) = PT_REGS_SYSCALL_NR(regs);			break;		}	}	sp = PT_REGS_SP(regs);	if((ka->sa.sa_flags & SA_ONSTACK) && (sas_ss_flags(sp) == 0))		sp = current->sas_ss_sp + current->sas_ss_size;#ifdef CONFIG_ARCH_HAS_SC_SIGNALS	if(!(ka->sa.sa_flags & SA_SIGINFO))		err = setup_signal_stack_sc(sp, signr, ka, regs, oldset);	else#endif		err = setup_signal_stack_si(sp, signr, ka, regs, info, oldset);	if(err){		spin_lock_irq(&current->sighand->siglock);		current->blocked = *oldset;		recalc_sigpending();		spin_unlock_irq(&current->sighand->siglock);		force_sigsegv(signr, current);	}	else if(!(ka->sa.sa_flags & SA_NODEFER)){		spin_lock_irq(&current->sighand->siglock);		sigorsets(&current->blocked, &current->blocked, 			  &ka->sa.sa_mask);		sigaddset(&current->blocked, signr);		recalc_sigpending();		spin_unlock_irq(&current->sighand->siglock);	}	return err;}
4520	/local/tlutelli/issta_data/temp/c/2005_temp/2005/4520/69be8f189653cd81aae5a74e26615b12871bb72e/signal_kern.c/clean/arch/um/kernel/signal_kern.c