summaryrefslogtreecommitdiffstats
path: root/sys/nfsserver
diff options
context:
space:
mode:
authorrwatson <rwatson@FreeBSD.org>2007-04-15 15:50:50 +0000
committerrwatson <rwatson@FreeBSD.org>2007-04-15 15:50:50 +0000
commit35b5232a252c5133aaf2221318cbcb060b140f03 (patch)
tree69c0d80dae986d68f85ba29647c13a3fd80dd25e /sys/nfsserver
parent252acbdc5f419e408a922db39d75a65a5f007b19 (diff)
downloadFreeBSD-src-35b5232a252c5133aaf2221318cbcb060b140f03.zip
FreeBSD-src-35b5232a252c5133aaf2221318cbcb060b140f03.tar.gz
In nfsrv_rcv(), don't reacquire the nfs server lock until after
nfs_realign() has been called, as it may sleep waiting on memory allocation. Reported by: simon
Diffstat (limited to 'sys/nfsserver')
-rw-r--r--sys/nfsserver/nfs_srvsock.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/sys/nfsserver/nfs_srvsock.c b/sys/nfsserver/nfs_srvsock.c
index 971368f..897e5f4 100644
--- a/sys/nfsserver/nfs_srvsock.c
+++ b/sys/nfsserver/nfs_srvsock.c
@@ -506,8 +506,8 @@ nfsrv_rcv(struct socket *so, void *arg, int waitflag)
NFSD_LOCK();
continue;
}
- NFSD_LOCK();
nfs_realign(&mp, 10 * NFSX_UNSIGNED);
+ NFSD_LOCK();
rec->nr_address = nam;
rec->nr_packet = mp;
STAILQ_INSERT_TAIL(&slp->ns_rec, rec, nr_link);
OpenPOWER on IntegriCloud