587 static int handle_signal(unsigned long sig, siginfo_t *info,
588 struct k_sigaction *ka, sigset_t *oldset, struct pt_regs *regs)
589 {
590 int ret;
……
602 /* fallthrough */
603 case ERESTARTNOINTR: /* Userland will reload $v0. */
604 regs->regs[7] = regs->regs[26];
605 regs->cp0_epc -= 8;
606 }
2012/5/23 David Daney <david.daney@xxxxxxxxxx>
On 05/22/2012 02:40 AM, Songmao Tian wrote:
Hello all:<http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=blob;f=arch/mips/kernel/scall32-o32.S;h=a632bc144efa1b9ca977a582864530e33ee039cb;hb=72c04af9a2d57b7945cf3de8e71461bd80695d50#l50>
In handle_sys there's a
50
sw a3, PT_R26(sp) # save a3 for syscall restarting
I woner why it need to save a3 in R26(k0) slot in the stack?
It has to go somewhere. The K0 and K1 slots aren't used to save other things.
David Daney