diff --git a/sys/alpha/alpha/machdep.c b/sys/alpha/alpha/machdep.c index eecd53f97d7d..fe9b276e59b8 100644 --- a/sys/alpha/alpha/machdep.c +++ b/sys/alpha/alpha/machdep.c @@ -2074,6 +2074,9 @@ set_mcontext(struct thread *td, const mcontext_t *mcp) if (td == curthread) { alpha_pal_wrusp(mcp->mc_regs[FRAME_SP]); alpha_pal_wrunique(mcp->mc_thrptr); + } else { + td->td_pcb->pcb_hw.apcb_usp = mcp->mc_regs[FRAME_SP]; + td->td_pcb->pcb_hw.apcb_unique = mcp->mc_thrptr; } /*