diff options
author | jhb <jhb@FreeBSD.org> | 2003-04-22 18:23:49 +0000 |
---|---|---|
committer | jhb <jhb@FreeBSD.org> | 2003-04-22 18:23:49 +0000 |
commit | 146e8aecec6562b0321536e1d77ccd3ba583ec9d (patch) | |
tree | 222816ecfa4d78c70aa83bd9c9691fc78e08ee97 /sys/alpha/linux | |
parent | 8a97197e8f8f0de0da7d2972aba853ab8b672bb9 (diff) | |
download | FreeBSD-src-146e8aecec6562b0321536e1d77ccd3ba583ec9d.zip FreeBSD-src-146e8aecec6562b0321536e1d77ccd3ba583ec9d.tar.gz |
- Replace inline implementations of sigprocmask() with calls to
kern_sigprocmask() in the various binary compatibility emulators.
- Replace calls to sigsuspend(), sigaltstack(), sigaction(), and
sigprocmask() that used the stackgap with calls to the corresponding
kern_sig*() functions instead without using the stackgap.
Diffstat (limited to 'sys/alpha/linux')
-rw-r--r-- | sys/alpha/linux/linux_machdep.c | 13 |
1 files changed, 4 insertions, 9 deletions
diff --git a/sys/alpha/linux/linux_machdep.c b/sys/alpha/linux/linux_machdep.c index 851ac83..07b89a7 100644 --- a/sys/alpha/linux/linux_machdep.c +++ b/sys/alpha/linux/linux_machdep.c @@ -35,6 +35,7 @@ #include <sys/mount.h> #include <sys/mutex.h> #include <sys/proc.h> +#include <sys/syscallsubr.h> #include <sys/sysproto.h> #include <sys/unistd.h> #include <sys/user.h> @@ -303,11 +304,7 @@ linux_rt_sigsuspend(td, uap) { int error; l_sigset_t lmask; - sigset_t *bmask; - struct sigsuspend_args bsd; - caddr_t sg; - - sg = stackgap_init(); + sigset_t bmask; #ifdef DEBUG if (ldebug(rt_sigsuspend)) @@ -321,10 +318,8 @@ linux_rt_sigsuspend(td, uap) if (error) return (error); - bmask = stackgap_alloc(&sg, sizeof(sigset_t)); - linux_to_bsd_sigset(&lmask, bmask); - bsd.sigmask = bmask; - return (sigsuspend(td, &bsd)); + linux_to_bsd_sigset(&lmask, &bmask); + return (kern_sigsuspend(td, bmask)); } int |