summaryrefslogtreecommitdiff
path: root/sys/kern/vfs_cache.c
diff options
context:
space:
mode:
authorKonstantin Belousov <kib@FreeBSD.org>2016-10-07 11:38:28 +0000
committerKonstantin Belousov <kib@FreeBSD.org>2016-10-07 11:38:28 +0000
commitf71d08566cb81e8f76c1bae56cbbfd51d2b2a784 (patch)
tree2c8228705444c595ff4f17411653af08f18ee32c /sys/kern/vfs_cache.c
parent6f98c83306205f02c693acf5c007fe64824fb9f3 (diff)
downloadsrc-test-f71d08566cb81e8f76c1bae56cbbfd51d2b2a784.tar.gz
src-test-f71d08566cb81e8f76c1bae56cbbfd51d2b2a784.zip
Notes
Diffstat (limited to 'sys/kern/vfs_cache.c')
-rw-r--r--sys/kern/vfs_cache.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/sys/kern/vfs_cache.c b/sys/kern/vfs_cache.c
index cc7f533543e4e..d5037912da913 100644
--- a/sys/kern/vfs_cache.c
+++ b/sys/kern/vfs_cache.c
@@ -1756,7 +1756,7 @@ cache_purge_negative(struct vnode *vp)
* Flush all entries referencing a particular filesystem.
*/
void
-cache_purgevfs(struct mount *mp)
+cache_purgevfs(struct mount *mp, bool force)
{
TAILQ_HEAD(, namecache) ncps;
struct mtx *vlp1, *vlp2;
@@ -1768,7 +1768,7 @@ cache_purgevfs(struct mount *mp)
/* Scan hash tables for applicable entries */
SDT_PROBE1(vfs, namecache, purgevfs, done, mp);
- if (mp->mnt_nvnodelistsize <= ncpurgeminvnodes)
+ if (!force && mp->mnt_nvnodelistsize <= ncpurgeminvnodes)
return;
TAILQ_INIT(&ncps);
n_nchash = nchash + 1;