diff options
author | Mateusz Guzik <mjg@FreeBSD.org> | 2020-10-30 10:46:35 +0000 |
---|---|---|
committer | Mateusz Guzik <mjg@FreeBSD.org> | 2020-10-30 10:46:35 +0000 |
commit | 4bfebc8d2c5d0e813dfdcbe7038b36ffc2bb9f1b (patch) | |
tree | 20cd898d05ba7642997cab0deb880fab7bd25b96 /sys/contrib/openzfs/module | |
parent | 0f352f4e2593289ded5597ed231e8a66d7d99f62 (diff) | |
download | src-4bfebc8d2c5d0e813dfdcbe7038b36ffc2bb9f1b.tar.gz src-4bfebc8d2c5d0e813dfdcbe7038b36ffc2bb9f1b.zip |
cache: add cache_vop_mkdir and rename cache_rename to cache_vop_rename
Notes
Notes:
svn path=/head/; revision=367162
Diffstat (limited to 'sys/contrib/openzfs/module')
-rw-r--r-- | sys/contrib/openzfs/module/os/freebsd/zfs/zfs_vnops.c | 16 |
1 files changed, 13 insertions, 3 deletions
diff --git a/sys/contrib/openzfs/module/os/freebsd/zfs/zfs_vnops.c b/sys/contrib/openzfs/module/os/freebsd/zfs/zfs_vnops.c index 5496cb8b448b..c7e1fbca28d2 100644 --- a/sys/contrib/openzfs/module/os/freebsd/zfs/zfs_vnops.c +++ b/sys/contrib/openzfs/module/os/freebsd/zfs/zfs_vnops.c @@ -2273,6 +2273,16 @@ zfs_mkdir(znode_t *dzp, const char *dirname, vattr_t *vap, znode_t **zpp, return (0); } +#if __FreeBSD_version < 1300124 +static void +cache_vop_rmdir(struct vnode *dvp, struct vnode *vp) +{ + + cache_purge(dvp); + cache_purge(vp); +} +#endif + /* * Remove a directory subdir entry. If the current working * directory is the same as the subdir to be removed, the @@ -2342,7 +2352,7 @@ zfs_rmdir_(vnode_t *dvp, vnode_t *vp, const char *name, cred_t *cr) dmu_tx_commit(tx); - cache_purge(vp); + cache_vop_rmdir(dvp, vp); out: if (zfsvfs->z_os->os_sync == ZFS_SYNC_ALWAYS) zil_commit(zilog, 0); @@ -3901,7 +3911,7 @@ zfs_rename_check(znode_t *szp, znode_t *sdzp, znode_t *tdzp) #if __FreeBSD_version < 1300110 static void -cache_rename(struct vnode *fdvp, struct vnode *fvp, struct vnode *tdvp, +cache_vop_rename(struct vnode *fdvp, struct vnode *fvp, struct vnode *tdvp, struct vnode *tvp, struct componentname *fcnp, struct componentname *tcnp) { @@ -4170,7 +4180,7 @@ zfs_rename_(vnode_t *sdvp, vnode_t **svpp, struct componentname *scnp, } } if (error == 0) { - cache_rename(sdvp, *svpp, tdvp, *tvpp, scnp, tcnp); + cache_vop_rename(sdvp, *svpp, tdvp, *tvpp, scnp, tcnp); } } |