From owner-freebsd-current Tue Sep 7 10:42:31 1999 Delivered-To: freebsd-current@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 583) id A22F814DC4; Tue, 7 Sep 1999 10:42:28 -0700 (PDT) To: nordwick@erdos.askjeeves.com, wollman@khavrinen.lcs.mit.edu Subject: Re: (P)review: sigset_t for more than 32 signals Cc: current@FreeBSD.ORG In-Reply-To: <199909061833.OAA03865@khavrinen.lcs.mit.edu> Message-Id: <19990907174228.A22F814DC4@hub.freebsd.org> Date: Tue, 7 Sep 1999 10:42:28 -0700 (PDT) From: bde@FreeBSD.ORG (Bruce Evans) Sender: owner-freebsd-current@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.ORG > It's true that this would (currently) slow down uthreads. However, I > suspect that uthreads may want to do its own signal-mask handling > anyway (even though it currently doesn't). On the other hand, if we > made jmp_buf and struct sigcontext compatible, it could clean up the > thread scheduler's inner workings. Note that C9x requires longjmp() to leave the floating point environment alone, so the full sigcontext must not be restored. This doesn't prevent using sigreturn() to implement longjmp(), but it guarantees that setjmp()/longjmp() can't be (ab)used to implement full context switching. Making jmp_buf the same as struct sigcontext would be a bit wasteful. Bruce To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-current" in the body of the message