summaryrefslogtreecommitdiffstats
path: root/sys/nfsclient
diff options
context:
space:
mode:
authorjmallett <jmallett@FreeBSD.org>2002-10-01 17:15:53 +0000
committerjmallett <jmallett@FreeBSD.org>2002-10-01 17:15:53 +0000
commit7a693db242641440dad298d332b3cc5a4c88f8f4 (patch)
tree07d2fcfbfe85d84af8cf79f8fec57733afa19e18 /sys/nfsclient
parentb5dfcc0b31407d0d79c551549f16736d600e350a (diff)
downloadFreeBSD-src-7a693db242641440dad298d332b3cc5a4c88f8f4.zip
FreeBSD-src-7a693db242641440dad298d332b3cc5a4c88f8f4.tar.gz
Back our kernel support for reliable signal queues.
Requested by: rwatson, phk, and many others
Diffstat (limited to 'sys/nfsclient')
-rw-r--r--sys/nfsclient/nfs_socket.c9
1 files changed, 2 insertions, 7 deletions
diff --git a/sys/nfsclient/nfs_socket.c b/sys/nfsclient/nfs_socket.c
index 08e53e9..15cf946 100644
--- a/sys/nfsclient/nfs_socket.c
+++ b/sys/nfsclient/nfs_socket.c
@@ -61,7 +61,6 @@ __FBSDID("$FreeBSD$");
#include <sys/sysctl.h>
#include <sys/syslog.h>
#include <sys/vnode.h>
-#include <sys/ksiginfo.h>
#include <netinet/in.h>
#include <netinet/tcp.h>
@@ -1240,15 +1239,11 @@ nfs_sigintr(struct nfsmount *nmp, struct nfsreq *rep, struct thread *td)
return (0);
p = td->td_proc;
- PROC_LOCK(p);
- ksiginfo_to_sigset_t(p, &tmpset);
+ tmpset = p->p_siglist;
SIGSETNAND(tmpset, p->p_sigmask);
SIGSETNAND(tmpset, p->p_sigignore);
- if (signal_queued(p, 0) && NFSINT_SIGMASK(tmpset)) {
- PROC_UNLOCK(p);
+ if (SIGNOTEMPTY(p->p_siglist) && NFSINT_SIGMASK(tmpset))
return (EINTR);
- }
- PROC_UNLOCK(p);
return (0);
}
OpenPOWER on IntegriCloud