diff options
| author | fvdl <fvdl@NetBSD.org> | 1995-03-10 22:55:04 +0000 |
|---|---|---|
| committer | fvdl <fvdl@NetBSD.org> | 1995-03-10 22:55:04 +0000 |
| commit | faf14422850fc348acd8cfae077d9cf46103cbe7 (patch) | |
| tree | ddd714bc4cfc6e53c4bffc306bdb31f97f507251 /sys/compat/linux/common | |
| parent | 7a903f90748ad908b4a01e38ebab87deca76daad (diff) | |
Add the Linux pause() system call. Fix the arguments to sigsuspend().
Diffstat (limited to 'sys/compat/linux/common')
| -rw-r--r-- | sys/compat/linux/common/linux_sig_notalpha.c | 22 | ||||
| -rw-r--r-- | sys/compat/linux/common/linux_sigaction.c | 22 | ||||
| -rw-r--r-- | sys/compat/linux/common/linux_signal.c | 22 |
3 files changed, 60 insertions, 6 deletions
diff --git a/sys/compat/linux/common/linux_sig_notalpha.c b/sys/compat/linux/common/linux_sig_notalpha.c index 70d98544ff4..131d2be6bcc 100644 --- a/sys/compat/linux/common/linux_sig_notalpha.c +++ b/sys/compat/linux/common/linux_sig_notalpha.c @@ -1,4 +1,4 @@ -/* $NetBSD: linux_sig_notalpha.c,v 1.2 1995/03/08 15:17:49 fvdl Exp $ */ +/* $NetBSD: linux_sig_notalpha.c,v 1.3 1995/03/10 22:55:04 fvdl Exp $ */ /* * Copyright (c) 1995 Frank van der Linden @@ -53,7 +53,7 @@ #include <compat/linux/linux_signal.h> /* - * Most of the stuff in this file is taken from Christos' SVR4 emul + * Most of ths stuff in this file is taken from Christos' SVR4 emul * code. The things that need to be done are largely the same, so * re-inventing the wheel doesn't make much sense. */ @@ -497,6 +497,8 @@ int linux_sigsuspend(p, uap, retval) struct proc *p; struct linux_sigsuspend_args /* { + syscallarg(caddr_t) restart; + syscallarg(int) oldmask; syscallarg(int) mask; } */ *uap; register_t *retval; @@ -508,6 +510,22 @@ linux_sigsuspend(p, uap, retval) } /* + * The deprecated pause(2), which is really just an instance + * of sigsuspend(2). + */ +int +linux_pause(p, uap, retval) + struct proc *p; + void *uap; + register_t *retval; +{ + struct sigsuspend_args bsa; + + SCARG(&bsa, mask) = p->p_sigmask; + return sigsuspend(p, &bsa, retval); +} + +/* * Once more: only a signal conversion is needed. */ int diff --git a/sys/compat/linux/common/linux_sigaction.c b/sys/compat/linux/common/linux_sigaction.c index 438e5a85dc1..ed24436380b 100644 --- a/sys/compat/linux/common/linux_sigaction.c +++ b/sys/compat/linux/common/linux_sigaction.c @@ -1,4 +1,4 @@ -/* $NetBSD: linux_sigaction.c,v 1.2 1995/03/08 15:17:49 fvdl Exp $ */ +/* $NetBSD: linux_sigaction.c,v 1.3 1995/03/10 22:55:04 fvdl Exp $ */ /* * Copyright (c) 1995 Frank van der Linden @@ -53,7 +53,7 @@ #include <compat/linux/linux_signal.h> /* - * Most of the stuff in this file is taken from Christos' SVR4 emul + * Most of ths stuff in this file is taken from Christos' SVR4 emul * code. The things that need to be done are largely the same, so * re-inventing the wheel doesn't make much sense. */ @@ -497,6 +497,8 @@ int linux_sigsuspend(p, uap, retval) struct proc *p; struct linux_sigsuspend_args /* { + syscallarg(caddr_t) restart; + syscallarg(int) oldmask; syscallarg(int) mask; } */ *uap; register_t *retval; @@ -508,6 +510,22 @@ linux_sigsuspend(p, uap, retval) } /* + * The deprecated pause(2), which is really just an instance + * of sigsuspend(2). + */ +int +linux_pause(p, uap, retval) + struct proc *p; + void *uap; + register_t *retval; +{ + struct sigsuspend_args bsa; + + SCARG(&bsa, mask) = p->p_sigmask; + return sigsuspend(p, &bsa, retval); +} + +/* * Once more: only a signal conversion is needed. */ int diff --git a/sys/compat/linux/common/linux_signal.c b/sys/compat/linux/common/linux_signal.c index 2e679dde7e5..50ef5623821 100644 --- a/sys/compat/linux/common/linux_signal.c +++ b/sys/compat/linux/common/linux_signal.c @@ -1,4 +1,4 @@ -/* $NetBSD: linux_signal.c,v 1.2 1995/03/08 15:17:49 fvdl Exp $ */ +/* $NetBSD: linux_signal.c,v 1.3 1995/03/10 22:55:04 fvdl Exp $ */ /* * Copyright (c) 1995 Frank van der Linden @@ -53,7 +53,7 @@ #include <compat/linux/linux_signal.h> /* - * Most of the stuff in this file is taken from Christos' SVR4 emul + * Most of ths stuff in this file is taken from Christos' SVR4 emul * code. The things that need to be done are largely the same, so * re-inventing the wheel doesn't make much sense. */ @@ -497,6 +497,8 @@ int linux_sigsuspend(p, uap, retval) struct proc *p; struct linux_sigsuspend_args /* { + syscallarg(caddr_t) restart; + syscallarg(int) oldmask; syscallarg(int) mask; } */ *uap; register_t *retval; @@ -508,6 +510,22 @@ linux_sigsuspend(p, uap, retval) } /* + * The deprecated pause(2), which is really just an instance + * of sigsuspend(2). + */ +int +linux_pause(p, uap, retval) + struct proc *p; + void *uap; + register_t *retval; +{ + struct sigsuspend_args bsa; + + SCARG(&bsa, mask) = p->p_sigmask; + return sigsuspend(p, &bsa, retval); +} + +/* * Once more: only a signal conversion is needed. */ int |
