Date: Thu, 20 Dec 2001 07:37:14 +0100 From: Bernd Walter <ticso@cicely9.cicely.de> To: Andrew Gallatin <gallatin@cs.duke.edu> Cc: Daniel Eischen <eischen@vigrid.com>, freebsd-alpha@FreeBSD.ORG Subject: Re: Munging jmp_bufs on alpha Message-ID: <20011220063713.GC67179@cicely9.cicely.de> In-Reply-To: <15393.15450.563749.55393@grasshopper.cs.duke.edu> References: <3C21000F.994BD53D@vigrid.com> <15393.15450.563749.55393@grasshopper.cs.duke.edu>
next in thread | previous in thread | raw e-mail | index | archive | help
On Wed, Dec 19, 2001 at 08:18:18PM -0500, Andrew Gallatin wrote: > > Daniel Eischen writes: > > Included is a sample program that includes the jmp_buf-munging > > macros that use to work and that no longer work. [ Drew, you > > out there? You got these to work before ;-) ] > > Unfortunately, I no longer have the time to track -current on alpha.. > > I do have an idea where the problem might lie -- The alpha longjmp > relies on calling sigreturn to switch stacks. I imagine quite a bit > has changed in regard to returning from signals in the face of SMPng & > KSEs.. The printf in scheduler is failing. That is because scheduler is called with t12 still set to the address from the library and therefor we get a wrong gp value. In the static compiled case t12 within _longjmp is the same as in scheduler so it doesn't matter. IMHO _setjmp and _longjmp must save/restore t12 too. I don't have the time to test until this evening. -- B.Walter COSMO-Project http://www.cosmo-project.de ticso@cicely.de Usergroup info@cosmo-project.de 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?20011220063713.GC67179>