Use PSL_KERNEL as upcall thread's initial rflags, don't use

scratch user rflags.
This commit is contained in:
David Xu 2003-07-29 12:44:16 +00:00
parent 011a891406
commit 5a92cbc206

View File

@ -260,7 +260,7 @@ cpu_set_upcall(struct thread *td, struct thread *td0)
pcb2->pcb_rsp = (register_t)td->td_frame - sizeof(void *); /* trampoline arg */
pcb2->pcb_rbx = (register_t)td; /* trampoline arg */
pcb2->pcb_rip = (register_t)fork_trampoline;
pcb2->pcb_rflags = td->td_frame->tf_rflags & ~PSL_I; /* ints disabled */
pcb2->pcb_rflags = PSL_KERNEL; /* ints disabled */
/*
* If we didn't copy the pcb, we'd need to do the following registers:
* pcb2->pcb_savefpu: cloned above.