From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mailserv2.iuinc.com (qmailr@mailserv2.iuinc.com [206.245.164.55]) by puffin.external.hp.com (8.8.7/8.8.7) with SMTP id NAA16685 for ; Tue, 17 Aug 1999 13:55:34 -0600 Sender: drepper@cygnus.com To: Cary Coutant Cc: "Matthew Wilcox" , Subject: Re: [parisc-linux] sigsetreturn (was utssys?) References: <199908171916.MAA24603@adlmail.cup.hp.com> Reply-To: drepper@cygnus.com (Ulrich Drepper) Mime-Version: 1.0 (generated by tm-edit 7.108) Content-Type: text/plain; charset=US-ASCII From: Ulrich Drepper Date: 17 Aug 1999 12:54:24 -0700 In-Reply-To: Cary Coutant's message of "Tue, 17 Aug 1999 12:20:07 -0700" Message-ID: List-ID: Cary Coutant writes: > Since the normal BV instruction used for returns can't branch across > space boundaries, the signal handler can't return directly to kernel > space, so the kernel needs to supply a return address in user space > that will implement the restoration of the interrupted context. This > return address is the sigreturn() system call, found in libc. In > order for the kernel to know the address of sigreturn, it needs to > be told in advance; that's what sigsetreturn() does. This is what Linux uses the sa_restorer in `struct sigaction' for. I think it's a better interface then sigsetreturn() so consider implementing it this way and not provide sigsetreturn. -- ---------------. drepper at gnu.org ,-. 1325 Chesapeake Terrace Ulrich Drepper \ ,-------------------' \ Sunnyvale, CA 94089 USA Cygnus Solutions `--' drepper at cygnus.com `------------------------