From f4430f22b8dcd757e87f71c8389e3925e7b592da Mon Sep 17 00:00:00 2001 From: Juli Mallett Date: Mon, 30 Sep 2002 21:15:33 +0000 Subject: [PATCH] Lock access to the signal queue, and related structures, with PROC_LOCK. Submitted by: jhb --- sys/nfsclient/nfs_socket.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/sys/nfsclient/nfs_socket.c b/sys/nfsclient/nfs_socket.c index 192e2517429..08e53e974b2 100644 --- a/sys/nfsclient/nfs_socket.c +++ b/sys/nfsclient/nfs_socket.c @@ -1240,11 +1240,15 @@ 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); SIGSETNAND(tmpset, p->p_sigmask); SIGSETNAND(tmpset, p->p_sigignore); - if (signal_queued(p, 0) && NFSINT_SIGMASK(tmpset)) + if (signal_queued(p, 0) && NFSINT_SIGMASK(tmpset)) { + PROC_UNLOCK(p); return (EINTR); + } + PROC_UNLOCK(p); return (0); }