diff options
Diffstat (limited to 'sys/nfsclient/nfs_socket.c')
-rw-r--r-- | sys/nfsclient/nfs_socket.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/sys/nfsclient/nfs_socket.c b/sys/nfsclient/nfs_socket.c index 4fb575b..a796c4c 100644 --- a/sys/nfsclient/nfs_socket.c +++ b/sys/nfsclient/nfs_socket.c @@ -1255,12 +1255,14 @@ nfs_timer(void *arg) */ rep->r_flags |= R_REXMIT_INPROG; mtx_unlock(&nfs_reqq_mtx); + NET_LOCK_GIANT(); if ((nmp->nm_flag & NFSMNT_NOCONN) == 0) error = (*so->so_proto->pr_usrreqs->pru_send) (so, 0, m, NULL, NULL, curthread); else error = (*so->so_proto->pr_usrreqs->pru_send) (so, 0, m, nmp->nm_nam, NULL, curthread); + NET_UNLOCK_GIANT(); mtx_lock(&nfs_reqq_mtx); rep->r_flags &= ~R_REXMIT_INPROG; wakeup((caddr_t)&rep->r_flags); |