user_signal(WSTOPSIG(status), regs); 
user_signal(WSTOPSIG(status), regs, pid); 
void userspace(union uml_pt_regs *regs){	int err, status, op, pid = userspace_pid[0];	int local_using_sysemu; /*To prevent races if using_sysemu changes under us.*/	while(1){		restore_registers(pid, regs);		/* Now we set local_using_sysemu to be used for one loop */		local_using_sysemu = get_using_sysemu();		op = SELECT_PTRACE_OPERATION(local_using_sysemu, singlestepping(NULL));		err = ptrace(op, pid, 0, 0);		if(err)			panic("userspace - could not resume userspace process, "			      "pid=%d, ptrace operation = %d, errno = %d\n",			      op, errno);		CATCH_EINTR(err = waitpid(pid, &status, WUNTRACED));		if(err < 0)			panic("userspace - waitpid failed, errno = %d\n", 			      errno);		regs->skas.is_user = 1;		save_registers(pid, regs);		UPT_SYSCALL_NR(regs) = -1; /* Assume: It's not a syscall */		if(WIFSTOPPED(status)){		  	switch(WSTOPSIG(status)){			case SIGSEGV:				handle_segv(pid);				break;			case SIGTRAP + 0x80:			        handle_trap(pid, regs, local_using_sysemu);				break;			case SIGTRAP:				relay_signal(SIGTRAP, regs);				break;			case SIGIO:			case SIGVTALRM:			case SIGILL:			case SIGBUS:			case SIGFPE:			case SIGWINCH:				user_signal(WSTOPSIG(status), regs);				break;			default:			        printk("userspace - child stopped with signal "				       "%d\n", WSTOPSIG(status));			}			interrupt_end();			/* Avoid -ERESTARTSYS handling in host */			PT_SYSCALL_NR(regs->skas.regs) = -1;		}	}}
10457	/local/tlutelli/issta_data/temp/c/2005_temp/2005/10457/c578455a3eccf4dd7bd111e77129c301d6d67914/process.c/clean/arch/um/kernel/skas/process.c