summaryrefslogtreecommitdiffstats
path: root/sys/kern/vfs_lookup.c
diff options
context:
space:
mode:
authordfr <dfr@FreeBSD.org>1995-08-24 10:17:39 +0000
committerdfr <dfr@FreeBSD.org>1995-08-24 10:17:39 +0000
commit8bffcb6d1a3b548b22b61ebb466088117f22dbd4 (patch)
treed90bc1e43584830baedfd1de74bbb3f81e4cf79d /sys/kern/vfs_lookup.c
parent21ab8fe695e63021b17631de9b39b8302af39240 (diff)
downloadFreeBSD-src-8bffcb6d1a3b548b22b61ebb466088117f22dbd4.zip
FreeBSD-src-8bffcb6d1a3b548b22b61ebb466088117f22dbd4.tar.gz
Add support for amd direct maps.
Reviewed by: Thomas Graichen <graichen@sirius.physik.fu-berlin.de>
Diffstat (limited to 'sys/kern/vfs_lookup.c')
-rw-r--r--sys/kern/vfs_lookup.c37
1 files changed, 19 insertions, 18 deletions
diff --git a/sys/kern/vfs_lookup.c b/sys/kern/vfs_lookup.c
index e3c7654..35a7a69 100644
--- a/sys/kern/vfs_lookup.c
+++ b/sys/kern/vfs_lookup.c
@@ -36,7 +36,7 @@
* SUCH DAMAGE.
*
* @(#)vfs_lookup.c 8.4 (Berkeley) 2/16/94
- * $Id: vfs_lookup.c,v 1.7 1995/05/30 08:06:33 rgrimes Exp $
+ * $Id: vfs_lookup.c,v 1.8 1995/07/31 00:35:46 bde Exp $
*/
#include <sys/param.h>
@@ -458,23 +458,6 @@ unionlookup:
}
dp = ndp->ni_vp;
- /*
- * Check for symbolic link
- */
- if ((dp->v_type == VLNK) &&
- ((cnp->cn_flags & FOLLOW) || trailing_slash ||
- *ndp->ni_next == '/')) {
- cnp->cn_flags |= ISSYMLINK;
- return (0);
- }
-
- /*
- * Check for bogus trailing slashes.
- */
- if (trailing_slash && dp->v_type != VDIR) {
- error = ENOTDIR;
- goto bad2;
- }
/*
* Check to see if the vnode has been mounted on;
@@ -494,6 +477,24 @@ unionlookup:
ndp->ni_vp = dp = tdp;
}
+ /*
+ * Check for symbolic link
+ */
+ if ((dp->v_type == VLNK) &&
+ ((cnp->cn_flags & FOLLOW) || trailing_slash ||
+ *ndp->ni_next == '/')) {
+ cnp->cn_flags |= ISSYMLINK;
+ return (0);
+ }
+
+ /*
+ * Check for bogus trailing slashes.
+ */
+ if (trailing_slash && dp->v_type != VDIR) {
+ error = ENOTDIR;
+ goto bad2;
+ }
+
nextname:
/*
* Not a symbolic link. If more pathname,
OpenPOWER on IntegriCloud