summaryrefslogtreecommitdiff
path: root/sys/arch/amiga
diff options
context:
space:
mode:
Diffstat (limited to 'sys/arch/amiga')
-rw-r--r--sys/arch/amiga/amiga/locore.s16
-rw-r--r--sys/arch/amiga/amiga/vm_machdep.c9
2 files changed, 7 insertions, 18 deletions
diff --git a/sys/arch/amiga/amiga/locore.s b/sys/arch/amiga/amiga/locore.s
index 5db4275ae7c..dd604cc4bb4 100644
--- a/sys/arch/amiga/amiga/locore.s
+++ b/sys/arch/amiga/amiga/locore.s
@@ -1,4 +1,4 @@
-/* $OpenBSD: locore.s,v 1.28 2000/05/28 03:55:21 art Exp $ */
+/* $OpenBSD: locore.s,v 1.29 2000/06/05 11:02:55 art Exp $ */
/* $NetBSD: locore.s,v 1.89 1997/07/17 16:22:54 is Exp $ */
/*
@@ -1223,16 +1223,10 @@ ENTRY(switch_exit)
movl #nullpcb,_curpcb | save state into garbage pcb
lea tmpstk,sp | goto a tmp stack
- /* Free old process's user area. */
- movl #USPACE,sp@- | size of u-area
- movl a0@(P_ADDR),sp@- | address u-area of process
- movl _kernel_map,sp@- | map it was allocated in
-#if defined(UVM)
- jbsr _uvm_km_free | deallocate it
-#else
- jbsr _kmem_free | deallocate it
-#endif
- lea sp@(12),sp | pop args
+ /* Schedule the vmspace and stack to be freed. */
+ movl a0,sp@- | exit2(p)
+ jbsr _C_LABEL(exit2)
+ lea sp@(4),sp | pop args
jra _cpu_switch
diff --git a/sys/arch/amiga/amiga/vm_machdep.c b/sys/arch/amiga/amiga/vm_machdep.c
index c9d782fe27a..70490213a40 100644
--- a/sys/arch/amiga/amiga/vm_machdep.c
+++ b/sys/arch/amiga/amiga/vm_machdep.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: vm_machdep.c,v 1.13 2000/05/28 03:55:21 art Exp $ */
+/* $OpenBSD: vm_machdep.c,v 1.14 2000/06/05 11:02:56 art Exp $ */
/* $NetBSD: vm_machdep.c,v 1.30 1997/05/19 10:14:50 veego Exp $ */
/*
@@ -151,12 +151,7 @@ void
cpu_exit(p)
struct proc *p;
{
-#if defined(UVM)
- uvmspace_free(p->p_vmspace);
-#else
- vmspace_free(p->p_vmspace);
-#endif
-
+
(void)splhigh();
#if defined(UVM)
uvmexp.swtch++;