patch-2.3.99-pre6 linux/arch/ia64/ia32/ia32_signal.c
Next file: linux/arch/ia64/ia32/ia32_traps.c
Previous file: linux/arch/ia64/ia32/ia32_entry.S
Back to the patch index
Back to the overall index
- Lines: 82
- Date:
Fri Apr 21 15:21:23 2000
- Orig file:
v2.3.99-pre5/linux/arch/ia64/ia32/ia32_signal.c
- Orig date:
Sun Feb 13 19:29:03 2000
diff -u --recursive --new-file v2.3.99-pre5/linux/arch/ia64/ia32/ia32_signal.c linux/arch/ia64/ia32/ia32_signal.c
@@ -94,7 +94,9 @@
err |= __put_user(tmp ? fpstate : NULL, &sc->fpstate);
/* non-iBCS2 extensions.. */
+#endif
err |= __put_user(mask, &sc->oldmask);
+#if 0
err |= __put_user(current->tss.cr2, &sc->cr2);
#endif
@@ -196,7 +198,7 @@
return (void *)((esp - frame_size) & -8ul);
}
-static void
+static int
setup_frame_ia32(int sig, struct k_sigaction *ka, sigset_t *set,
struct pt_regs * regs)
{
@@ -247,20 +249,21 @@
regs->eflags &= ~TF_MASK;
#endif
-#if 1
- printk("SIG deliver (%s:%d): sp=%p pc=%lx ra=%x\n",
- current->comm, current->pid, frame, regs->cr_iip, frame->pretcode);
+#if 0
+ printk("SIG deliver (%s:%d): sig=%d sp=%p pc=%lx ra=%x\n",
+ current->comm, current->pid, sig, frame, regs->cr_iip, frame->pretcode);
#endif
- return;
+ return 1;
give_sigsegv:
if (sig == SIGSEGV)
ka->sa.sa_handler = SIG_DFL;
force_sig(SIGSEGV, current);
+ return 0;
}
-static void
+static int
setup_rt_frame_ia32(int sig, struct k_sigaction *ka, siginfo_t *info,
sigset_t *set, struct pt_regs * regs)
{
@@ -316,29 +319,29 @@
regs->eflags &= ~TF_MASK;
#endif
-#if 1
+#if 0
printk("SIG deliver (%s:%d): sp=%p pc=%lx ra=%x\n",
current->comm, current->pid, frame, regs->cr_iip, frame->pretcode);
#endif
- return;
+ return 1;
give_sigsegv:
if (sig == SIGSEGV)
ka->sa.sa_handler = SIG_DFL;
force_sig(SIGSEGV, current);
+ return 0;
}
-long
+int
ia32_setup_frame1 (int sig, struct k_sigaction *ka, siginfo_t *info,
sigset_t *set, struct pt_regs *regs)
{
/* Set up the stack frame */
if (ka->sa.sa_flags & SA_SIGINFO)
- setup_rt_frame_ia32(sig, ka, info, set, regs);
+ return(setup_rt_frame_ia32(sig, ka, info, set, regs));
else
- setup_frame_ia32(sig, ka, set, regs);
-
+ return(setup_frame_ia32(sig, ka, set, regs));
}
asmlinkage int
FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen (who was at: slshen@lbl.gov)