summaryrefslogtreecommitdiff
path: root/sys
diff options
context:
space:
mode:
authorMichael Shalayeff <mickey@cvs.openbsd.org>2002-08-03 20:56:43 +0000
committerMichael Shalayeff <mickey@cvs.openbsd.org>2002-08-03 20:56:43 +0000
commit6e55fa34f9d67ac9fc5915366297f7de0e1af0fc (patch)
treed8eec94b9bd8c020870a7b3e38170fdd3a93619e /sys
parente151ad07f3937f01b9308a4a6a0c88590649dba3 (diff)
in fact, no need for switch_exit() completely, cpu_exit() handles the reins to the cpu_switch and basta!
Diffstat (limited to 'sys')
-rw-r--r--sys/arch/hppa/hppa/locore.S33
-rw-r--r--sys/arch/hppa/hppa/vm_machdep.c11
-rw-r--r--sys/arch/hppa/include/cpu.h3
3 files changed, 8 insertions, 39 deletions
diff --git a/sys/arch/hppa/hppa/locore.S b/sys/arch/hppa/hppa/locore.S
index 6629ad2300f..435e59d9335 100644
--- a/sys/arch/hppa/hppa/locore.S
+++ b/sys/arch/hppa/hppa/locore.S
@@ -1,4 +1,4 @@
-/* $OpenBSD: locore.S,v 1.78 2002/08/03 20:23:00 mickey Exp $ */
+/* $OpenBSD: locore.S,v 1.79 2002/08/03 20:56:42 mickey Exp $ */
/*
* Copyright (c) 1998-2002 Michael Shalayeff
@@ -2394,8 +2394,6 @@ ENTRY(remrunqueue,0)
ldw R%whichqs(t2), t3
#ifdef DIAGNOSTIC
- ldb P_STAT(arg0), t1
- comib,=,n SRUN, t1, Lremrunqueue_panic
bvb,<,n t3, remrunqueue_ok
Lremrunqueue_panic
@@ -2503,14 +2501,11 @@ link_ok
stw t2, P_BACK(arg0)
stw r0, P_BACK(arg1)
- comb,<> arg0, t2, sw_qnempty
- nop
-
vdepi 0, 1, t3
+ sub,<> t2, arg0, r0
stw t3, R%whichqs(t1)
/* don't need &whichqs (t1) starting here */
-sw_qnempty
ldil L%want_resched, t3
stw r0, R%want_resched(t3)
@@ -2624,30 +2619,6 @@ switch_return
EXIT(cpu_switch)
-/*
- * switch_exit(struct proc *p)
- * restore proc0 context and go into cpu_switch to select the next runable
- * process.
- */
- .import kernel_map, data
- .import uvmspace_free, code
- .import uvm_km_free, code
-ENTRY(switch_exit,0)
-
- /* arg0 -- oldproc */
- .import exit2, code
- ldil L%exit2, t2
- ldo R%exit2(t2), t2
- .call
- blr %r0, rp
- bv,n %r0(t2)
- nop
-
- .call
- b switch_search
- copy r0, arg2 /* no old proc */
-EXIT(switch_exit)
-
ENTRY(switch_trampoline,0)
.call
blr r0, rp
diff --git a/sys/arch/hppa/hppa/vm_machdep.c b/sys/arch/hppa/hppa/vm_machdep.c
index e4ddcbb165c..597f7300f1e 100644
--- a/sys/arch/hppa/hppa/vm_machdep.c
+++ b/sys/arch/hppa/hppa/vm_machdep.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: vm_machdep.c,v 1.39 2002/06/09 02:50:29 mickey Exp $ */
+/* $OpenBSD: vm_machdep.c,v 1.40 2002/08/03 20:56:42 mickey Exp $ */
/*
* Copyright (c) 1999-2002 Michael Shalayeff
@@ -261,14 +261,13 @@ cpu_exit(p)
extern paddr_t fpu_curpcb; /* from locore.S */
struct trapframe *tf = p->p_md.md_regs;
- uvmexp.swtch++;
-
- splhigh();
- curproc = NULL;
if (fpu_curpcb == tf->tf_cr30)
fpu_curpcb = 0;
- switch_exit(p);
+ exit2(p);
+ cpu_switch(p);
+
+ /* switch_exit(p); */
}
void
diff --git a/sys/arch/hppa/include/cpu.h b/sys/arch/hppa/include/cpu.h
index 8ae13f87b10..9c037f18be1 100644
--- a/sys/arch/hppa/include/cpu.h
+++ b/sys/arch/hppa/include/cpu.h
@@ -1,4 +1,4 @@
-/* $OpenBSD: cpu.h,v 1.30 2002/06/07 21:33:43 nordin Exp $ */
+/* $OpenBSD: cpu.h,v 1.31 2002/08/03 20:56:42 mickey Exp $ */
/*
* Copyright (c) 2000-2001 Michael Shalayeff
@@ -135,7 +135,6 @@ int spstrcpy(pa_space_t ssp, const void *src,
pa_space_t dsp, void *dst, size_t size, size_t *rsize);
int copy_on_fault(void);
void switch_trampoline(void);
-void switch_exit(struct proc *p);
int cpu_dumpsize(void);
int cpu_dump(void);
#endif