diff options
Diffstat (limited to 'sys/arch/mvme88k')
-rw-r--r-- | sys/arch/mvme88k/include/trap.h | 3 | ||||
-rw-r--r-- | sys/arch/mvme88k/mvme88k/vm_machdep.c | 26 |
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, |