if(n == 0) new_thread_proc((void *) stack, new_thread_handler); else if(n == 1) remove_sigstack(); else if(n == 2){ 
switch(n){ case INIT_JMP_NEW_THREAD: new_thread_proc((void *) stack, new_thread_handler); break; case INIT_JMP_REMOVE_SIGSTACK: remove_sigstack(); break; case INIT_JMP_CALLBACK: 
int start_idle_thread(void *stack, void *switch_buf_ptr, void **fork_buf_ptr){	sigjmp_buf **switch_buf = switch_buf_ptr;	int n;	set_handler(SIGWINCH, (__sighandler_t) sig_handler,		    SA_ONSTACK | SA_RESTART, SIGUSR1, SIGIO, SIGALRM,		    SIGVTALRM, -1);	*fork_buf_ptr = &initial_jmpbuf;	n = sigsetjmp(initial_jmpbuf, 1);	if(n == 0)		new_thread_proc((void *) stack, new_thread_handler);	else if(n == 1)		remove_sigstack();	else if(n == 2){		(*cb_proc)(cb_arg);		siglongjmp(*cb_back, 1);	}	else if(n == 3){		kmalloc_ok = 0;		return(0);	}	else if(n == 4){		kmalloc_ok = 0;		return(1);	}	siglongjmp(**switch_buf, 1);}
4520	/local/tlutelli/issta_data/temp/c/2005_temp/2005/4520/675dffc914412a25d33bbc8baea30681c565c9c1/process.c/clean/arch/um/kernel/skas/process.c