summaryrefslogtreecommitdiff
path: root/sys
diff options
context:
space:
mode:
authormycroft <mycroft@NetBSD.org>1999-09-10 23:24:23 +0000
committermycroft <mycroft@NetBSD.org>1999-09-10 23:24:23 +0000
commit34b45d9bd7fb76efc0f7dfc1934e414962128e03 (patch)
tree1db7015ebbd83dbc2d13c61bddf5590ce52b852c /sys
parentcb7f9fc8ac17b63a0d0c626fce58d3b36a65d62e (diff)
Obey negative cache entries for intermediate directories during a create.
Diffstat (limited to 'sys')
-rw-r--r--sys/kern/vfs_cache.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/sys/kern/vfs_cache.c b/sys/kern/vfs_cache.c
index 057fd395af6..d760d797e8f 100644
--- a/sys/kern/vfs_cache.c
+++ b/sys/kern/vfs_cache.c
@@ -1,4 +1,4 @@
-/* $NetBSD: vfs_cache.c,v 1.20 1999/09/05 14:22:34 jdolecek Exp $ */
+/* $NetBSD: vfs_cache.c,v 1.21 1999/09/10 23:24:23 mycroft Exp $ */
/*
* Copyright (c) 1989, 1993
@@ -142,7 +142,8 @@ cache_lookup(dvp, vpp, cnp)
* Restore the ISWHITEOUT flag saved earlier.
*/
cnp->cn_flags |= ncp->nc_vpid;
- if (cnp->cn_nameiop != CREATE) {
+ if (cnp->cn_nameiop != CREATE ||
+ (cnp->cn_flags & ISLASTCN) == 0) {
nchstats.ncs_neghits++;
/*
* Move this slot to end of LRU chain,