diff options
Diffstat (limited to 'sys/arch')
-rw-r--r-- | sys/arch/alpha/alpha/machdep.c | 5 | ||||
-rw-r--r-- | sys/arch/alpha/alpha/netbsd_machdep.c | 5 | ||||
-rw-r--r-- | sys/arch/hp300/hp300/hpux_machdep.c | 5 | ||||
-rw-r--r-- | sys/arch/hppa/hppa/machdep.c | 5 | ||||
-rw-r--r-- | sys/arch/i386/i386/freebsd_machdep.c | 6 | ||||
-rw-r--r-- | sys/arch/i386/i386/linux_machdep.c | 6 | ||||
-rw-r--r-- | sys/arch/i386/i386/machdep.c | 5 | ||||
-rw-r--r-- | sys/arch/i386/i386/svr4_machdep.c | 6 | ||||
-rw-r--r-- | sys/arch/m68k/m68k/sig_machdep.c | 5 | ||||
-rw-r--r-- | sys/arch/macppc/macppc/machdep.c | 5 | ||||
-rw-r--r-- | sys/arch/mvme68k/mvme68k/hpux_machdep.c | 5 | ||||
-rw-r--r-- | sys/arch/mvme88k/mvme88k/machdep.c | 7 | ||||
-rw-r--r-- | sys/arch/mvmeppc/mvmeppc/machdep.c | 5 | ||||
-rw-r--r-- | sys/arch/sparc/sparc/machdep.c | 6 | ||||
-rw-r--r-- | sys/arch/sparc/sparc/svr4_machdep.c | 6 | ||||
-rw-r--r-- | sys/arch/sparc64/sparc64/machdep.c | 6 | ||||
-rw-r--r-- | sys/arch/sparc64/sparc64/netbsd_machdep.c | 6 | ||||
-rw-r--r-- | sys/arch/sparc64/stand/ofwboot/version | 2 | ||||
-rw-r--r-- | sys/arch/vax/vax/machdep.c | 5 |
19 files changed, 37 insertions, 64 deletions
diff --git a/sys/arch/alpha/alpha/machdep.c b/sys/arch/alpha/alpha/machdep.c index 1d7b9761bf3..fadfb4d3ce6 100644 --- a/sys/arch/alpha/alpha/machdep.c +++ b/sys/arch/alpha/alpha/machdep.c @@ -1,4 +1,4 @@ -/* $OpenBSD: machdep.c,v 1.74 2002/06/08 05:19:12 art Exp $ */ +/* $OpenBSD: machdep.c,v 1.75 2002/07/20 19:24:55 art Exp $ */ /* $NetBSD: machdep.c,v 1.210 2000/06/01 17:12:38 thorpej Exp $ */ /*- @@ -1638,8 +1638,7 @@ sendsig(catcher, sig, mask, code, type, val) /* * Set up the registers to return to sigcode. */ - frame->tf_regs[FRAME_PC] = - (u_int64_t)PS_STRINGS - (esigcode - sigcode); + frame->tf_regs[FRAME_PC] = p->p_sigcode; frame->tf_regs[FRAME_A0] = sig; frame->tf_regs[FRAME_A1] = (psp->ps_siginfo & sigmask(sig)) ? (u_int64_t)sip : NULL; diff --git a/sys/arch/alpha/alpha/netbsd_machdep.c b/sys/arch/alpha/alpha/netbsd_machdep.c index 13fee57ba65..f6ba2928d50 100644 --- a/sys/arch/alpha/alpha/netbsd_machdep.c +++ b/sys/arch/alpha/alpha/netbsd_machdep.c @@ -1,4 +1,4 @@ -/* $OpenBSD: netbsd_machdep.c,v 1.7 2002/03/14 01:26:26 millert Exp $ */ +/* $OpenBSD: netbsd_machdep.c,v 1.8 2002/07/20 19:24:55 art Exp $ */ /* * Copyright (c) 1994, 1995, 1996 Carnegie-Mellon University. @@ -201,8 +201,7 @@ netbsd_sendsig(catcher, sig, mask, code, type, val) /* * Set up the registers to return to netbsd_sigcode. */ - frame->tf_regs[FRAME_PC] = - (u_int64_t)PS_STRINGS - (netbsd_esigcode - netbsd_sigcode); + frame->tf_regs[FRAME_PC] = p->p_sigcode; frame->tf_regs[FRAME_A0] = sig; frame->tf_regs[FRAME_A1] = code; frame->tf_regs[FRAME_A2] = (u_int64_t)scp; diff --git a/sys/arch/hp300/hp300/hpux_machdep.c b/sys/arch/hp300/hp300/hpux_machdep.c index 1f8794c721d..5e149e4f318 100644 --- a/sys/arch/hp300/hp300/hpux_machdep.c +++ b/sys/arch/hp300/hp300/hpux_machdep.c @@ -1,4 +1,4 @@ -/* $OpenBSD: hpux_machdep.c,v 1.12 2002/06/04 00:09:08 deraadt Exp $ */ +/* $OpenBSD: hpux_machdep.c,v 1.13 2002/07/20 19:24:55 art Exp $ */ /* $NetBSD: hpux_machdep.c,v 1.19 1998/02/16 20:58:30 thorpej Exp $ */ /* @@ -391,7 +391,6 @@ hpux_sendsig(catcher, sig, mask, code, type, val) struct sigacts *psp = p->p_sigacts; short ft; int oonstack, fsize; - extern char sigcode[], esigcode[]; frame = (struct frame *)p->p_md.md_regs; ft = frame->f_format; @@ -531,7 +530,7 @@ hpux_sendsig(catcher, sig, mask, code, type, val) /* * Signal trampoline code is at base of user stack. */ - frame->f_pc = (int)PS_STRINGS - (esigcode - sigcode); + frame->f_pc = p->p_sigcode; #ifdef DEBUG if ((hpuxsigdebug & SDB_KSTACK) && p->p_pid == hpuxsigpid) printf("hpux_sendsig(%d): sig %d returns\n", diff --git a/sys/arch/hppa/hppa/machdep.c b/sys/arch/hppa/hppa/machdep.c index 03ebd577c3a..d33a565c17e 100644 --- a/sys/arch/hppa/hppa/machdep.c +++ b/sys/arch/hppa/hppa/machdep.c @@ -1,4 +1,4 @@ -/* $OpenBSD: machdep.c,v 1.72 2002/05/14 00:25:02 mickey Exp $ */ +/* $OpenBSD: machdep.c,v 1.73 2002/07/20 19:24:55 art Exp $ */ /* * Copyright (c) 1999-2002 Michael Shalayeff @@ -1256,8 +1256,7 @@ sendsig(catcher, sig, mask, code, type, val) tf->tf_arg2 = tf->tf_r3 = (register_t)scp; tf->tf_arg3 = (register_t)catcher; tf->tf_sp = (register_t)scp + sss; - tf->tf_iioq_head = HPPA_PC_PRIV_USER | - ((register_t)PS_STRINGS + sizeof(struct ps_strings)); + tf->tf_iioq_head = HPPA_PC_PRIV_USER | p->p_sigcode; tf->tf_iioq_tail = tf->tf_iioq_head + 4; /* disable tracing in the trapframe */ diff --git a/sys/arch/i386/i386/freebsd_machdep.c b/sys/arch/i386/i386/freebsd_machdep.c index ebc5c51fba1..387ec943199 100644 --- a/sys/arch/i386/i386/freebsd_machdep.c +++ b/sys/arch/i386/i386/freebsd_machdep.c @@ -1,4 +1,4 @@ -/* $OpenBSD: freebsd_machdep.c,v 1.12 2001/11/06 19:53:14 miod Exp $ */ +/* $OpenBSD: freebsd_machdep.c,v 1.13 2002/07/20 19:24:56 art Exp $ */ /* $NetBSD: freebsd_machdep.c,v 1.10 1996/05/03 19:42:05 christos Exp $ */ /*- @@ -89,7 +89,6 @@ freebsd_sendsig(catcher, sig, mask, code, type, val) struct freebsd_sigframe *fp, frame; struct sigacts *psp = p->p_sigacts; int oonstack; - extern char freebsd_sigcode[], freebsd_esigcode[]; /* * Build the argument list for the signal handler. @@ -160,8 +159,7 @@ freebsd_sendsig(catcher, sig, mask, code, type, val) */ tf->tf_es = GSEL(GUDATA_SEL, SEL_UPL); tf->tf_ds = GSEL(GUDATA_SEL, SEL_UPL); - tf->tf_eip = (int)(((char *)PS_STRINGS) - - (freebsd_esigcode - freebsd_sigcode)); + tf->tf_eip = p->p_sigcode; tf->tf_cs = GSEL(GUCODE_SEL, SEL_UPL); tf->tf_eflags &= ~(PSL_T|PSL_VM|PSL_AC); tf->tf_esp = (int)fp; diff --git a/sys/arch/i386/i386/linux_machdep.c b/sys/arch/i386/i386/linux_machdep.c index a2064fbb418..fc3989a98fd 100644 --- a/sys/arch/i386/i386/linux_machdep.c +++ b/sys/arch/i386/i386/linux_machdep.c @@ -1,4 +1,4 @@ -/* $OpenBSD: linux_machdep.c,v 1.22 2002/04/19 21:28:58 jasoni Exp $ */ +/* $OpenBSD: linux_machdep.c,v 1.23 2002/07/20 19:24:56 art Exp $ */ /* $NetBSD: linux_machdep.c,v 1.29 1996/05/03 19:42:11 christos Exp $ */ /* @@ -116,7 +116,6 @@ linux_sendsig(catcher, sig, mask, code, type, val) struct linux_sigframe *fp, frame; struct sigacts *psp = p->p_sigacts; int oonstack; - extern char linux_sigcode[], linux_esigcode[]; tf = p->p_md.md_regs; oonstack = psp->ps_sigstk.ss_flags & SS_ONSTACK; @@ -184,8 +183,7 @@ linux_sendsig(catcher, sig, mask, code, type, val) */ tf->tf_es = GSEL(GUDATA_SEL, SEL_UPL); tf->tf_ds = GSEL(GUDATA_SEL, SEL_UPL); - tf->tf_eip = (int)(((char *)PS_STRINGS) - - (linux_esigcode - linux_sigcode)); + tf->tf_eip = p->p_sigcode; tf->tf_cs = GSEL(GUCODE_SEL, SEL_UPL); tf->tf_eflags &= ~(PSL_T|PSL_VM|PSL_AC); tf->tf_esp = (int)fp; diff --git a/sys/arch/i386/i386/machdep.c b/sys/arch/i386/i386/machdep.c index 4fba879ade1..936990935f6 100644 --- a/sys/arch/i386/i386/machdep.c +++ b/sys/arch/i386/i386/machdep.c @@ -1,4 +1,4 @@ -/* $OpenBSD: machdep.c,v 1.211 2002/07/19 17:30:50 mickey Exp $ */ +/* $OpenBSD: machdep.c,v 1.212 2002/07/20 19:24:56 art Exp $ */ /* $NetBSD: machdep.c,v 1.214 1996/11/10 03:16:17 thorpej Exp $ */ /*- @@ -1467,7 +1467,6 @@ sendsig(catcher, sig, mask, code, type, val) struct sigframe *fp, frame; struct sigacts *psp = p->p_sigacts; int oonstack; - extern char sigcode[], esigcode[]; /* * Build the argument list for the signal handler. @@ -1554,7 +1553,7 @@ sendsig(catcher, sig, mask, code, type, val) __asm("movw %w0,%%fs" : : "r" (GSEL(GUDATA_SEL, SEL_UPL))); tf->tf_es = GSEL(GUDATA_SEL, SEL_UPL); tf->tf_ds = GSEL(GUDATA_SEL, SEL_UPL); - tf->tf_eip = (int)(((char *)PS_STRINGS) - (esigcode - sigcode)); + tf->tf_eip = p->p_sigcode; tf->tf_cs = GSEL(GUCODE_SEL, SEL_UPL); tf->tf_eflags &= ~(PSL_T|PSL_VM|PSL_AC); tf->tf_esp = (int)fp; diff --git a/sys/arch/i386/i386/svr4_machdep.c b/sys/arch/i386/i386/svr4_machdep.c index 7ed6edcc7a7..a0569208045 100644 --- a/sys/arch/i386/i386/svr4_machdep.c +++ b/sys/arch/i386/i386/svr4_machdep.c @@ -1,4 +1,4 @@ -/* $OpenBSD: svr4_machdep.c,v 1.15 2002/03/14 01:26:33 millert Exp $ */ +/* $OpenBSD: svr4_machdep.c,v 1.16 2002/07/20 19:24:56 art Exp $ */ /* $NetBSD: svr4_machdep.c,v 1.24 1996/05/03 19:42:26 christos Exp $ */ /* @@ -325,7 +325,6 @@ svr4_sendsig(catcher, sig, mask, code, type, val) struct svr4_sigframe *fp, frame; struct sigacts *psp = p->p_sigacts; int oonstack; - extern char svr4_esigcode[], svr4_sigcode[]; tf = p->p_md.md_regs; oonstack = psp->ps_sigstk.ss_flags & SS_ONSTACK; @@ -378,8 +377,7 @@ svr4_sendsig(catcher, sig, mask, code, type, val) */ tf->tf_es = GSEL(GUDATA_SEL, SEL_UPL); tf->tf_ds = GSEL(GUDATA_SEL, SEL_UPL); - tf->tf_eip = (int)(((char *)PS_STRINGS) - - (svr4_esigcode - svr4_sigcode)); + tf->tf_eip = p->p_sigcode; tf->tf_cs = GSEL(GUCODE_SEL, SEL_UPL); tf->tf_eflags &= ~(PSL_T|PSL_VM|PSL_AC); tf->tf_esp = (int)fp; diff --git a/sys/arch/m68k/m68k/sig_machdep.c b/sys/arch/m68k/m68k/sig_machdep.c index e0555f3a5ef..9570ba4a9b1 100644 --- a/sys/arch/m68k/m68k/sig_machdep.c +++ b/sys/arch/m68k/m68k/sig_machdep.c @@ -1,4 +1,4 @@ -/* $OpenBSD: sig_machdep.c,v 1.9 2002/06/04 00:09:08 deraadt Exp $ */ +/* $OpenBSD: sig_machdep.c,v 1.10 2002/07/20 19:24:56 art Exp $ */ /* $NetBSD: sig_machdep.c,v 1.3 1997/04/30 23:28:03 gwr Exp $ */ /* @@ -145,7 +145,6 @@ sendsig(catcher, sig, mask, code, type, val) register struct sigacts *psp = p->p_sigacts; register short ft; int oonstack, fsize; - extern char sigcode[], esigcode[]; frame = (struct frame *)p->p_md.md_regs; ft = frame->f_format; @@ -276,7 +275,7 @@ sendsig(catcher, sig, mask, code, type, val) /* * Signal trampoline code is at base of user stack. */ - frame->f_pc = (int)PS_STRINGS - (esigcode - sigcode); + frame->f_pc = p->p_sigcode; #ifdef DEBUG if ((sigdebug & SDB_KSTACK) && p->p_pid == sigpid) printf("sendsig(%d): sig %d returns\n", diff --git a/sys/arch/macppc/macppc/machdep.c b/sys/arch/macppc/macppc/machdep.c index 497d655b801..f50cb9699ae 100644 --- a/sys/arch/macppc/macppc/machdep.c +++ b/sys/arch/macppc/macppc/machdep.c @@ -1,4 +1,4 @@ -/* $OpenBSD: machdep.c,v 1.35 2002/06/07 21:54:25 drahn Exp $ */ +/* $OpenBSD: machdep.c,v 1.36 2002/07/20 19:24:56 art Exp $ */ /* $NetBSD: machdep.c,v 1.4 1996/10/16 19:33:11 ws Exp $ */ /* @@ -774,8 +774,7 @@ sendsig(catcher, sig, mask, code, type, val) tf->fixreg[3] = (int)sig; tf->fixreg[4] = (psp->ps_siginfo & sigmask(sig)) ? (int)&fp->sf_si : NULL; tf->fixreg[5] = (int)&fp->sf_sc; - tf->srr0 = (int)(((char *)PS_STRINGS) - - (p->p_emul->e_esigcode - p->p_emul->e_sigcode)); + tf->srr0 = p->p_sigcode; #if WHEN_WE_ONLY_FLUSH_DATA_WHEN_DOING_PMAP_ENTER pmap_extract(vm_map_pmap(&p->p_vmspace->vm_map),tf->srr0, &pa); diff --git a/sys/arch/mvme68k/mvme68k/hpux_machdep.c b/sys/arch/mvme68k/mvme68k/hpux_machdep.c index 2d775d753d4..571cdfa014b 100644 --- a/sys/arch/mvme68k/mvme68k/hpux_machdep.c +++ b/sys/arch/mvme68k/mvme68k/hpux_machdep.c @@ -1,4 +1,4 @@ -/* $OpenBSD: hpux_machdep.c,v 1.7 2002/06/04 00:09:08 deraadt Exp $ */ +/* $OpenBSD: hpux_machdep.c,v 1.8 2002/07/20 19:24:56 art Exp $ */ /* $NetBSD: hpux_machdep.c,v 1.9 1997/03/16 10:00:45 thorpej Exp $ */ /* @@ -432,7 +432,6 @@ hpux_sendsig(catcher, sig, mask, code, type, val) register struct sigacts *psp = p->p_sigacts; register short ft; int oonstack, fsize; - extern char sigcode[], esigcode[]; frame = (struct frame *)p->p_md.md_regs; ft = frame->f_format; @@ -571,7 +570,7 @@ hpux_sendsig(catcher, sig, mask, code, type, val) /* * Signal trampoline code is at base of user stack. */ - frame->f_pc = (int)PS_STRINGS - (esigcode - sigcode); + frame->f_pc = p->p_sigcode; #ifdef DEBUG if ((hpuxsigdebug & SDB_KSTACK) && p->p_pid == hpuxsigpid) printf("hpux_sendsig(%d): sig %d returns\n", diff --git a/sys/arch/mvme88k/mvme88k/machdep.c b/sys/arch/mvme88k/mvme88k/machdep.c index f0de9357b07..b5e9e1ed9c7 100644 --- a/sys/arch/mvme88k/mvme88k/machdep.c +++ b/sys/arch/mvme88k/mvme88k/machdep.c @@ -1,4 +1,4 @@ -/* $OpenBSD: machdep.c,v 1.94 2002/06/04 00:09:08 deraadt Exp $ */ +/* $OpenBSD: machdep.c,v 1.95 2002/07/20 19:24:56 art Exp $ */ /* * Copyright (c) 1998, 1999, 2000, 2001 Steve Murphree, Jr. * Copyright (c) 1996 Nivas Madhur @@ -876,9 +876,6 @@ sendsig(catcher, sig, mask, code, type, val) int oonstack, fsize; struct sigframe sf; int addr; - extern char sigcode[], esigcode[]; - -#define szsigcode (esigcode - sigcode) tf = p->p_md.md_tf; oonstack = psp->ps_sigstk.ss_flags & SA_ONSTACK; @@ -993,7 +990,7 @@ sendsig(catcher, sig, mask, code, type, val) * Build the argument list for the signal handler. * Signal trampoline code is at base of user stack. */ - addr = (int)PS_STRINGS - szsigcode; + addr = p->p_sigcode; if (cputyp != CPU_88110) { /* mc88100 */ tf->snip = (addr & ~3) | NIP_V; diff --git a/sys/arch/mvmeppc/mvmeppc/machdep.c b/sys/arch/mvmeppc/mvmeppc/machdep.c index 855d28aa085..b9ea45475b0 100644 --- a/sys/arch/mvmeppc/mvmeppc/machdep.c +++ b/sys/arch/mvmeppc/mvmeppc/machdep.c @@ -1,4 +1,4 @@ -/* $OpenBSD: machdep.c,v 1.26 2002/06/08 15:48:58 miod Exp $ */ +/* $OpenBSD: machdep.c,v 1.27 2002/07/20 19:24:56 art Exp $ */ /* $NetBSD: machdep.c,v 1.4 1996/10/16 19:33:11 ws Exp $ */ /* @@ -768,8 +768,7 @@ sendsig(catcher, sig, mask, code, type, val) tf->fixreg[3] = (int)sig; tf->fixreg[4] = (psp->ps_siginfo & sigmask(sig)) ? (int)&fp->sf_si : NULL; tf->fixreg[5] = (int)&fp->sf_sc; - tf->srr0 = (int)(((char *)PS_STRINGS) - - (p->p_emul->e_esigcode - p->p_emul->e_sigcode)); + tf->srr0 = p->p_sigcode; #if WHEN_WE_ONLY_FLUSH_DATA_WHEN_DOING_PMAP_ENTER pmap_extract(vm_map_pmap(&p->p_vmspace->vm_map),tf->srr0, &pa); diff --git a/sys/arch/sparc/sparc/machdep.c b/sys/arch/sparc/sparc/machdep.c index 41ed403374d..7de944e8aa1 100644 --- a/sys/arch/sparc/sparc/machdep.c +++ b/sys/arch/sparc/sparc/machdep.c @@ -1,4 +1,4 @@ -/* $OpenBSD: machdep.c,v 1.83 2002/06/14 04:16:06 art Exp $ */ +/* $OpenBSD: machdep.c,v 1.84 2002/07/20 19:24:56 art Exp $ */ /* $NetBSD: machdep.c,v 1.85 1997/09/12 08:55:02 pk Exp $ */ /* @@ -525,8 +525,6 @@ sendsig(catcher, sig, mask, code, type, val) struct trapframe *tf; int caddr, oonstack, oldsp, newsp; struct sigframe sf; - extern char sigcode[], esigcode[]; -#define szsigcode (esigcode - sigcode) #ifdef COMPAT_SUNOS extern struct emul emul_sunos; #endif @@ -624,7 +622,7 @@ sendsig(catcher, sig, mask, code, type, val) } else #endif { - caddr = (int)PS_STRINGS - szsigcode; + caddr = p->p_sigcode; tf->tf_global[1] = (int)catcher; } tf->tf_pc = caddr; diff --git a/sys/arch/sparc/sparc/svr4_machdep.c b/sys/arch/sparc/sparc/svr4_machdep.c index cfd23afdf5d..cd448800d36 100644 --- a/sys/arch/sparc/sparc/svr4_machdep.c +++ b/sys/arch/sparc/sparc/svr4_machdep.c @@ -1,4 +1,4 @@ -/* $OpenBSD: svr4_machdep.c,v 1.10 2002/03/14 01:26:44 millert Exp $ */ +/* $OpenBSD: svr4_machdep.c,v 1.11 2002/07/20 19:24:57 art Exp $ */ /* $NetBSD: svr4_machdep.c,v 1.24 1997/07/29 10:04:45 fair Exp $ */ /* @@ -452,8 +452,6 @@ svr4_sendsig(catcher, sig, mask, code, type, val) struct svr4_sigframe *fp, frame; struct sigacts *psp = p->p_sigacts; int oonstack, oldsp, newsp, caddr; - extern char svr4_sigcode[], svr4_esigcode[]; - tf = (struct trapframe *)p->p_md.md_tf; oldsp = tf->tf_out[6]; @@ -514,7 +512,7 @@ svr4_sendsig(catcher, sig, mask, code, type, val) /* * Build context to run handler in. */ - caddr = (int)PS_STRINGS - (svr4_esigcode - svr4_sigcode); + caddr = p->p_sigcode; tf->tf_global[1] = (int)catcher; tf->tf_pc = caddr; diff --git a/sys/arch/sparc64/sparc64/machdep.c b/sys/arch/sparc64/sparc64/machdep.c index 4fe6af36656..ddf79f9c508 100644 --- a/sys/arch/sparc64/sparc64/machdep.c +++ b/sys/arch/sparc64/sparc64/machdep.c @@ -1,4 +1,4 @@ -/* $OpenBSD: machdep.c,v 1.46 2002/07/10 20:30:15 jsyn Exp $ */ +/* $OpenBSD: machdep.c,v 1.47 2002/07/20 19:24:57 art Exp $ */ /* $NetBSD: machdep.c,v 1.108 2001/07/24 19:30:14 eeh Exp $ */ /*- @@ -625,8 +625,6 @@ sendsig(catcher, sig, mask, code, type, val) struct rwindow *oldsp, *newsp; struct sigframe sf; int onstack; - extern char sigcode[], esigcode[]; -#define szsigcode (esigcode - sigcode) tf = p->p_md.md_tf; oldsp = (struct rwindow *)(u_long)(tf->tf_out[6] + STACK_OFFSET); @@ -710,7 +708,7 @@ sendsig(catcher, sig, mask, code, type, val) * Arrange to continue execution at the code copied out in exec(). * It needs the function to call in %g1, and a new stack pointer. */ - addr = (vaddr_t)PS_STRINGS - szsigcode; + addr = p->p_sigcode; tf->tf_global[1] = (vaddr_t)catcher; tf->tf_pc = addr; tf->tf_npc = addr + 4; diff --git a/sys/arch/sparc64/sparc64/netbsd_machdep.c b/sys/arch/sparc64/sparc64/netbsd_machdep.c index c5c527cb5f5..7bbf4f02e51 100644 --- a/sys/arch/sparc64/sparc64/netbsd_machdep.c +++ b/sys/arch/sparc64/sparc64/netbsd_machdep.c @@ -1,4 +1,4 @@ -/* $OpenBSD: netbsd_machdep.c,v 1.3 2002/06/15 17:23:31 art Exp $ */ +/* $OpenBSD: netbsd_machdep.c,v 1.4 2002/07/20 19:24:57 art Exp $ */ /*- * Copyright (c) 1996, 1997, 1998 The NetBSD Foundation, Inc. @@ -146,8 +146,6 @@ netbsd_sendsig(catcher, sig, mask, code, type, val) struct rwindow *oldsp, *newsp; struct netbsd_sigframe sf, *fp; int onstack; - extern char netbsd_sigcode[], netbsd_esigcode[]; -#define szsigcode (netbsd_esigcode - netbsd_sigcode) tf = p->p_md.md_tf; oldsp = (struct rwindow *)(u_long)(tf->tf_out[6] + STACK_OFFSET); @@ -215,7 +213,7 @@ netbsd_sendsig(catcher, sig, mask, code, type, val) * Arrange to continue execution at the code copied out in exec(). * It needs the function to call in %g1, and a new stack pointer. */ - addr = (vaddr_t)PS_STRINGS - szsigcode; + addr = p->p_sigcode; tf->tf_global[1] = (vaddr_t)catcher; tf->tf_pc = addr; tf->tf_npc = addr + 4; diff --git a/sys/arch/sparc64/stand/ofwboot/version b/sys/arch/sparc64/stand/ofwboot/version index 0cfbf08886f..b8626c4cff2 100644 --- a/sys/arch/sparc64/stand/ofwboot/version +++ b/sys/arch/sparc64/stand/ofwboot/version @@ -1 +1 @@ -2 +4 diff --git a/sys/arch/vax/vax/machdep.c b/sys/arch/vax/vax/machdep.c index f6404516fa3..2a6d400a6cf 100644 --- a/sys/arch/vax/vax/machdep.c +++ b/sys/arch/vax/vax/machdep.c @@ -1,4 +1,4 @@ -/* $OpenBSD: machdep.c,v 1.59 2002/05/16 07:37:44 miod Exp $ */ +/* $OpenBSD: machdep.c,v 1.60 2002/07/20 19:24:57 art Exp $ */ /* $NetBSD: machdep.c,v 1.108 2000/09/13 15:00:23 thorpej Exp $ */ /* @@ -439,7 +439,6 @@ sendsig(catcher, sig, mask, code, type, val) struct trapframe *syscf; struct sigcontext *sigctx, gsigctx; struct trampframe *trampf, gtrampf; - extern char sigcode[], esigcode[]; unsigned cursp; int onstack; @@ -490,7 +489,7 @@ printf("sendsig: signal %x catcher %x\n", sig, catcher); copyout(&gsigctx, sigctx, sizeof(gsigctx))) sigexit(p, SIGILL); - syscf->pc = (unsigned) (((char *) PS_STRINGS) - (esigcode - sigcode)); + syscf->pc = p->p_sigcode; syscf->psl = PSL_U | PSL_PREVU; syscf->ap = (unsigned) sigctx-8; syscf->sp = cursp; |