return 0; 
void setup_frame_32(struct k_sigaction * ka, struct pt_regs *regs,			       int signr, sigset_t *set){	struct sigframe *frame;	int err = 0;	frame = get_sigframe(ka, regs, sizeof(*frame));	if (!access_ok(VERIFY_WRITE, frame, sizeof (*frame)))		goto give_sigsegv;	/*	 * Set up the return code ...	 *	 *         li      v0, __NR_O32_sigreturn	 *         syscall	 */	err |= __put_user(0x24020000 + __NR_O32_sigreturn, frame->sf_code + 0);	err |= __put_user(0x0000000c                     , frame->sf_code + 1);	flush_cache_sigtramp((unsigned long) frame->sf_code);	err |= setup_sigcontext32(regs, &frame->sf_sc);	err |= __copy_to_user(&frame->sf_mask, set, sizeof(*set));	if (err)		goto give_sigsegv;	/*	 * Arguments to signal handler:	 *	 *   a0 = signal number	 *   a1 = 0 (should be cause)	 *   a2 = pointer to struct sigcontext	 *	 * $25 and c0_epc point to the signal handler, $29 points to the	 * struct sigframe.	 */	regs->regs[ 4] = signr;	regs->regs[ 5] = 0;	regs->regs[ 6] = (unsigned long) &frame->sf_sc;	regs->regs[29] = (unsigned long) frame;	regs->regs[31] = (unsigned long) frame->sf_code;	regs->cp0_epc = regs->regs[25] = (unsigned long) ka->sa.sa_handler;#if DEBUG_SIG	printk("SIG deliver (%s:%d): sp=0x%p pc=0x%lx ra=0x%p\n",	       current->comm, current->pid,	       frame, regs->cp0_epc, frame->sf_code);#endif        return;give_sigsegv:	force_sigsegv(signr, current);}
10457	/local/tlutelli/issta_data/temp/c/2005_temp/2005/10457/16cd3951366a013d52006982108437d3343c2fae/signal32.c/buggy/arch/mips/kernel/signal32.c