summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authordillon <dillon@FreeBSD.org>2001-12-14 07:18:31 +0000
committerdillon <dillon@FreeBSD.org>2001-12-14 07:18:31 +0000
commit8e6d2fbcbd6632194a3b13da9a3450e36b23cfbb (patch)
treefe558c1f00993d65b605957ff28852f6f40d476b
parentbf2556cfad12b040393aa6a33ea80a5adb0b51d6 (diff)
downloadFreeBSD-src-8e6d2fbcbd6632194a3b13da9a3450e36b23cfbb.zip
FreeBSD-src-8e6d2fbcbd6632194a3b13da9a3450e36b23cfbb.tar.gz
A slightly different version of the vlrureclaim fix.
Reported by: peter, ps
-rw-r--r--sys/kern/vfs_subr.c4
1 files changed, 1 insertions, 3 deletions
diff --git a/sys/kern/vfs_subr.c b/sys/kern/vfs_subr.c
index 14c2bdc..3b1f854 100644
--- a/sys/kern/vfs_subr.c
+++ b/sys/kern/vfs_subr.c
@@ -539,8 +539,6 @@ vlrureclaim(struct mount *mp, int count)
{
struct vnode *vp;
- if (mp == NULL)
- return;
mtx_lock(&mntvnode_mtx);
while (count && (vp = TAILQ_FIRST(&mp->mnt_nvnodelist)) != NULL) {
TAILQ_REMOVE(&mp->mnt_nvnodelist, vp, v_nmntvnodes);
@@ -591,7 +589,7 @@ getnewvnode(tag, mp, vops, vpp)
* algorithm to be stable we have to try to reuse at least 2.
* No hysteresis should be necessary.
*/
- if (numvnodes - freevnodes > desiredvnodes)
+ if (mp && numvnodes - freevnodes > desiredvnodes)
vlrureclaim(mp, 2);
/*
OpenPOWER on IntegriCloud