Date: Mon, 11 Mar 2002 09:15:40 -0500 (EST) From: Andrew Gallatin <gallatin@cs.duke.edu> To: Daniel Eischen <eischen@vigrid.com> Cc: alpha@FreeBSD.ORG Subject: Re: Tester needed Message-ID: <15500.48140.478588.518164@grasshopper.cs.duke.edu> In-Reply-To: <20020311115217.GI4295@cicely8.cicely.de> References: <3C631A1B.68E59BFE@vigrid.com> <20020311115217.GI4295@cicely8.cicely.de>
next in thread | previous in thread | raw e-mail | index | archive | help
> > +#if 1 > > + mcp->mc_regs[FRAME_SP] = alpha_pal_rdusp(); > > +#else > > + mcp->mc_regs[FRAME_SP] = td->td_pcb->pcb_hw.apcb_usp; > > +#endif > > [...] > > > > And what if 'td' is not 'curthread'? Has it been saved in the > > PCB then? Should the above be: > > > > + if (td == curthread) > > + mcp->mc_regs[FRAME_SP] = alpha_pal_rdusp(); > > + else > > + mcp->mc_regs[FRAME_SP] = td->td_pcb->pcb_hw.apcb_usp; > I'm pretty sure that the rdusp() will read the user stack pointer for the current execution context from the PALcode. So if td->td_pcb->pcb_hw.apcb_usp is valid for the context in question, then the above sounds reasonable. Drew To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-alpha" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?15500.48140.478588.518164>