[parisc-linux] sigsetreturn (was utssys?)

Ulrich Drepper drepper@cygnus.com
17 Aug 1999 12:54:24 -0700

Cary Coutant <cary@cup.hp.com> 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   `------------------------