diff options
author | Philip Guenthe <guenther@cvs.openbsd.org> | 2011-04-15 04:52:41 +0000 |
---|---|---|
committer | Philip Guenthe <guenther@cvs.openbsd.org> | 2011-04-15 04:52:41 +0000 |
commit | 71771abcbf45c58af4735979b21a2e7604cb42bf (patch) | |
tree | 1e12c4f7e6473b7549d0bf973e6f96bd314644b8 /sys/nfs/nfs_socket.c | |
parent | 847e8a9bf0e99af86e8791ea570d84b9d3bc54f9 (diff) |
Correct the sharing of the signal handling state: stuff that should
be shared (p_sigignore, p_sigcatch, P_NOCLDSTOP, P_NOCLDWAIT) moves
to struct sigacts, wihle stuff that should be per rthread (ps_oldmask,
SAS_OLDMASK, ps_sigstk) moves to struct proc. Treat the coredumping
state bits (ps_sig, ps_code, ps_type, ps_sigval) as per-rthread
until our locking around coredumping is better.
Oh, and remove the old SunOS-compat ps_usertramp member.
"I like the sound of this" tedu@
Diffstat (limited to 'sys/nfs/nfs_socket.c')
-rw-r--r-- | sys/nfs/nfs_socket.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/sys/nfs/nfs_socket.c b/sys/nfs/nfs_socket.c index 4b8b718f725..c01ed252599 100644 --- a/sys/nfs/nfs_socket.c +++ b/sys/nfs/nfs_socket.c @@ -1,4 +1,4 @@ -/* $OpenBSD: nfs_socket.c,v 1.98 2010/07/05 16:32:07 deraadt Exp $ */ +/* $OpenBSD: nfs_socket.c,v 1.99 2011/04/15 04:52:40 guenther Exp $ */ /* $NetBSD: nfs_socket.c,v 1.27 1996/04/15 20:20:00 thorpej Exp $ */ /* @@ -48,6 +48,7 @@ #include <sys/vnode.h> #include <sys/domain.h> #include <sys/protosw.h> +#include <sys/signalvar.h> #include <sys/socket.h> #include <sys/socketvar.h> #include <sys/syslog.h> @@ -1233,7 +1234,7 @@ nfs_sigintr(struct nfsmount *nmp, struct nfsreq *rep, struct proc *p) if (!(nmp->nm_flag & NFSMNT_INT)) return (0); if (p && p->p_siglist && - (((p->p_siglist & ~p->p_sigmask) & ~p->p_sigignore) & + (((p->p_siglist & ~p->p_sigmask) & ~p->p_sigacts->ps_sigignore) & NFSINT_SIGMASK)) return (EINTR); return (0); |