summaryrefslogtreecommitdiffstats
path: root/module
diff options
context:
space:
mode:
authorMatthew Ahrens <[email protected]>2018-10-17 10:30:08 -0700
committerBrian Behlendorf <[email protected]>2018-10-17 10:30:08 -0700
commit5fbf85c4e2a162723bb90ba5723ac4b0837217b9 (patch)
treee8923b4ee53d09d1c4694f50edb3101d89fa29cf /module
parentbfcb82cb5426e75799705938a9d17deb6cfaca82 (diff)
Linux does not HAVE_DNLC
Since Linux does not have the Directory Name Lookup Cache, we don't need the code to manage it. Reviewed-by: Brian Behlendorf <[email protected]> Reviewed-by: Tim Chase <[email protected]> Reviewed-by: George Melikov <[email protected]> Reviewed-by: Richard Elling <[email protected]> Signed-off-by: Matthew Ahrens <[email protected]> Closes #8031
Diffstat (limited to 'module')
-rw-r--r--module/zfs/zfs_dir.c37
-rw-r--r--module/zfs/zfs_vnops.c28
2 files changed, 0 insertions, 65 deletions
diff --git a/module/zfs/zfs_dir.c b/module/zfs/zfs_dir.c
index 8a591904f..bd173e7c3 100644
--- a/module/zfs/zfs_dir.c
+++ b/module/zfs/zfs_dir.c
@@ -99,11 +99,6 @@ zfs_match_find(zfsvfs_t *zfsvfs, znode_t *dzp, char *name, matchtype_t mt,
*zoid = ZFS_DIRENT_OBJ(*zoid);
-#ifdef HAVE_DNLC
- if (error == ENOENT && update)
- dnlc_update(ZTOI(dzp), name, DNLC_NO_VNODE);
-#endif /* HAVE_DNLC */
-
return (error);
}
@@ -151,9 +146,6 @@ zfs_dirent_lock(zfs_dirlock_t **dlpp, znode_t *dzp, char *name, znode_t **zpp,
boolean_t update;
matchtype_t mt = 0;
uint64_t zoid;
-#ifdef HAVE_DNLC
- vnode_t *vp = NULL;
-#endif /* HAVE_DNLC */
int error = 0;
int cmpflags;
@@ -320,29 +312,8 @@ zfs_dirent_lock(zfs_dirlock_t **dlpp, znode_t *dzp, char *name, znode_t **zpp,
if (error == 0)
error = (zoid == 0 ? SET_ERROR(ENOENT) : 0);
} else {
-#ifdef HAVE_DNLC
- if (update)
- vp = dnlc_lookup(ZTOI(dzp), name);
- if (vp == DNLC_NO_VNODE) {
- iput(vp);
- error = SET_ERROR(ENOENT);
- } else if (vp) {
- if (flag & ZNEW) {
- zfs_dirent_unlock(dl);
- iput(vp);
- return (SET_ERROR(EEXIST));
- }
- *dlpp = dl;
- *zpp = VTOZ(vp);
- return (0);
- } else {
- error = zfs_match_find(zfsvfs, dzp, name, mt,
- update, direntflags, realpnp, &zoid);
- }
-#else
error = zfs_match_find(zfsvfs, dzp, name, mt,
update, direntflags, realpnp, &zoid);
-#endif /* HAVE_DNLC */
}
if (error) {
if (error != ENOENT || (flag & ZEXISTS)) {
@@ -359,10 +330,6 @@ zfs_dirent_lock(zfs_dirlock_t **dlpp, znode_t *dzp, char *name, znode_t **zpp,
zfs_dirent_unlock(dl);
return (error);
}
-#ifdef HAVE_DNLC
- if (!(flag & ZXATTR) && update)
- dnlc_update(ZTOI(dzp), name, ZTOI(*zpp));
-#endif /* HAVE_DNLC */
}
*dlpp = dl;
@@ -901,10 +868,6 @@ zfs_link_destroy(zfs_dirlock_t *dl, znode_t *zp, dmu_tx_t *tx, int flag,
int count = 0;
int error;
-#ifdef HAVE_DNLC
- dnlc_remove(ZTOI(dzp), dl->dl_name);
-#endif /* HAVE_DNLC */
-
if (!(flag & ZRENAMING)) {
mutex_enter(&zp->z_lock);
diff --git a/module/zfs/zfs_vnops.c b/module/zfs/zfs_vnops.c
index f4e650dee..863adc595 100644
--- a/module/zfs/zfs_vnops.c
+++ b/module/zfs/zfs_vnops.c
@@ -1208,27 +1208,6 @@ zfs_lookup(struct inode *dip, char *nm, struct inode **ipp, int flags,
return (0);
}
return (error);
-#ifdef HAVE_DNLC
- } else if (!zdp->z_zfsvfs->z_norm &&
- (zdp->z_zfsvfs->z_case == ZFS_CASE_SENSITIVE)) {
-
- vnode_t *tvp = dnlc_lookup(dvp, nm);
-
- if (tvp) {
- error = zfs_fastaccesschk_execute(zdp, cr);
- if (error) {
- iput(tvp);
- return (error);
- }
- if (tvp == DNLC_NO_VNODE) {
- iput(tvp);
- return (SET_ERROR(ENOENT));
- } else {
- *vpp = tvp;
- return (specvp_check(vpp, cr));
- }
- }
-#endif /* HAVE_DNLC */
}
}
@@ -1765,13 +1744,6 @@ top:
goto out;
}
-#ifdef HAVE_DNLC
- if (realnmp)
- dnlc_remove(dvp, realnmp->pn_buf);
- else
- dnlc_remove(dvp, name);
-#endif /* HAVE_DNLC */
-
mutex_enter(&zp->z_lock);
may_delete_now = atomic_read(&ip->i_count) == 1 && !(zp->z_is_mapped);
mutex_exit(&zp->z_lock);