From 7df6e35964bd6b9db8597de1a81c0ee3a3e9ccc4 Mon Sep 17 00:00:00 2001 From: marcel Date: Tue, 21 Oct 2003 01:13:49 +0000 Subject: Remove md_bspstore from the MD fields of struct thread. Now that the backing store is at a fixed address, there's no need for a per-thread variable. --- sys/ia64/ia64/machdep.c | 4 ++-- sys/ia64/include/proc.h | 1 - sys/kern/kern_exec.c | 1 - 3 files changed, 2 insertions(+), 4 deletions(-) diff --git a/sys/ia64/ia64/machdep.c b/sys/ia64/ia64/machdep.c index 9d271c1..de593b9 100644 --- a/sys/ia64/ia64/machdep.c +++ b/sys/ia64/ia64/machdep.c @@ -1217,7 +1217,7 @@ exec_setregs(struct thread *td, u_long entry, u_long stack, u_long ps_strings) bzero(&tf->tf_scratch, sizeof(tf->tf_scratch)); bzero(&tf->tf_scratch_fp, sizeof(tf->tf_scratch_fp)); tf->tf_special.cfm = (1UL<<63) | (3UL<<7) | 3UL; - tf->tf_special.bspstore = td->td_md.md_bspstore; + tf->tf_special.bspstore = IA64_BACKINGSTORE; /* * Copy the arguments onto the kernel register stack so that * they get loaded by the loadrs instruction. Skip over the @@ -1236,7 +1236,7 @@ exec_setregs(struct thread *td, u_long entry, u_long stack, u_long ps_strings) tf->tf_special.ndirty = (ksttop - kst) << 3; } else { /* epc syscalls (default). */ tf->tf_special.cfm = (3UL<<62) | (3UL<<7) | 3UL; - tf->tf_special.bspstore = td->td_md.md_bspstore + 24; + tf->tf_special.bspstore = IA64_BACKINGSTORE + 24; /* * Write values for out0, out1 and out2 to the user's backing * store and arrange for them to be restored into the user's diff --git a/sys/ia64/include/proc.h b/sys/ia64/include/proc.h index 01ba3e8..74aea51 100644 --- a/sys/ia64/include/proc.h +++ b/sys/ia64/include/proc.h @@ -37,7 +37,6 @@ struct mdthread { u_long md_flags; - vm_offset_t md_bspstore; /* initial ar.bspstore */ register_t md_savecrit; }; diff --git a/sys/kern/kern_exec.c b/sys/kern/kern_exec.c index b2ce458..d55e9f3 100644 --- a/sys/kern/kern_exec.c +++ b/sys/kern/kern_exec.c @@ -873,7 +873,6 @@ exec_new_vmspace(imgp, sv) sv->sv_stackprot, VM_PROT_ALL, MAP_STACK_GROWS_UP); if (error) return (error); - FIRST_THREAD_IN_PROC(p)->td_md.md_bspstore = stack_addr; #endif /* vm_ssize and vm_maxsaddr are somewhat antiquated concepts in the -- cgit v1.1