summaryrefslogtreecommitdiff
path: root/sys/arch/mvme88k
diff options
context:
space:
mode:
Diffstat (limited to 'sys/arch/mvme88k')
-rw-r--r--sys/arch/mvme88k/include/trap.h3
-rw-r--r--sys/arch/mvme88k/mvme88k/vm_machdep.c26
2 files changed, 6 insertions, 23 deletions
diff --git a/sys/arch/mvme88k/include/trap.h b/sys/arch/mvme88k/include/trap.h
index 1cd82a99237..0da0e54175d 100644
--- a/sys/arch/mvme88k/include/trap.h
+++ b/sys/arch/mvme88k/include/trap.h
@@ -1,4 +1,4 @@
-/* $OpenBSD: trap.h,v 1.11 2001/08/24 22:52:20 miod Exp $ */
+/* $OpenBSD: trap.h,v 1.12 2001/11/06 18:41:10 art Exp $ */
/*
* Mach Operating System
* Copyright (c) 1992 Carnegie Mellon University
@@ -77,7 +77,6 @@ void panictrap(int type, struct m88100_saved_state *frame);
void test_trap(struct m88100_saved_state *frame);
void error_fault(struct m88100_saved_state *frame);
void error_reset(struct m88100_saved_state *frame);
-void child_return(struct proc *p);
unsigned ss_get_value(struct proc *p, unsigned addr, int size);
int ss_put_value(struct proc *p, unsigned addr, unsigned value, int size);
unsigned ss_branch_taken(unsigned inst, unsigned pc,
diff --git a/sys/arch/mvme88k/mvme88k/vm_machdep.c b/sys/arch/mvme88k/mvme88k/vm_machdep.c
index ecaceda6367..00643a78c41 100644
--- a/sys/arch/mvme88k/mvme88k/vm_machdep.c
+++ b/sys/arch/mvme88k/mvme88k/vm_machdep.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: vm_machdep.c,v 1.35 2001/09/23 02:51:36 miod Exp $ */
+/* $OpenBSD: vm_machdep.c,v 1.36 2001/11/06 18:41:10 art Exp $ */
/*
* Copyright (c) 1998 Steve Murphree, Jr.
@@ -89,7 +89,8 @@ int badpaddr __P((caddr_t, int));
*/
void
-cpu_fork(struct proc *p1, struct proc *p2, void *stack, size_t stacksize)
+cpu_fork(struct proc *p1, struct proc *p2, void *stack, size_t stacksize,
+ void (*func)(void *), void *arg)
{
struct switchframe *p2sf;
int cpu;
@@ -136,7 +137,8 @@ cpu_fork(struct proc *p1, struct proc *p2, void *stack, size_t stacksize)
ksfp = (struct ksigframe *)p2->p_addr->u_pcb.kernel_state.pcb_sp - 1;
- ksfp->func = child_return;
+ ksfp->func = func;
+ ksfp->arg = arg;
ksfp->proc = p2;
/*
@@ -151,24 +153,6 @@ cpu_fork(struct proc *p1, struct proc *p2, void *stack, size_t stacksize)
p2->p_addr->u_pcb.kernel_state.pcb_pc = (u_int)proc_trampoline;
}
-void
-cpu_set_kpc(struct proc *p, void (*func)(void *), void *arg)
-{
- /*
- * override func pointer in ksigframe with func.
- */
-
- struct ksigframe {
- void (*func)(void *);
- void *arg;
- } *ksfp;
-
- ksfp = (struct ksigframe *)p->p_addr->u_pcb.kernel_state.pcb_sp;
-
- ksfp->func = func;
- ksfp->arg = arg;
-}
-
/*
* cpu_exit is called as the last action during exit.
* We release the address space and machine-dependent resources,