zfs: remove 2 assertions that teardown lock is not held
They are not very useful and hard to implement with rms. This has a side effect of simplying the code.
This commit is contained in:
parent
42e7abd5db
commit
ff19fd6242
Notes:
svn2git
2020-12-20 02:59:44 +00:00
svn path=/head/; revision=367454
@ -1451,10 +1451,6 @@ zfs_lookup_lock(vnode_t *dvp, vnode_t *vp, const char *name, int lkflags)
|
|||||||
|
|
||||||
if (zfsvfs->z_replay == B_FALSE)
|
if (zfsvfs->z_replay == B_FALSE)
|
||||||
ASSERT_VOP_LOCKED(dvp, __func__);
|
ASSERT_VOP_LOCKED(dvp, __func__);
|
||||||
#ifdef DIAGNOSTIC
|
|
||||||
if ((zdp->z_pflags & ZFS_XATTR) == 0)
|
|
||||||
VERIFY(!ZFS_TEARDOWN_HELD(zfsvfs));
|
|
||||||
#endif
|
|
||||||
|
|
||||||
if (name[0] == 0 || (name[0] == '.' && name[1] == 0)) {
|
if (name[0] == 0 || (name[0] == '.' && name[1] == 0)) {
|
||||||
ASSERT3P(dvp, ==, vp);
|
ASSERT3P(dvp, ==, vp);
|
||||||
@ -6523,39 +6519,6 @@ zfs_vptocnp(struct vop_vptocnp_args *ap)
|
|||||||
return (error);
|
return (error);
|
||||||
}
|
}
|
||||||
|
|
||||||
#ifdef DIAGNOSTIC
|
|
||||||
#ifndef _SYS_SYSPROTO_H_
|
|
||||||
struct vop_lock1_args {
|
|
||||||
struct vnode *a_vp;
|
|
||||||
int a_flags;
|
|
||||||
char *file;
|
|
||||||
int line;
|
|
||||||
};
|
|
||||||
#endif
|
|
||||||
|
|
||||||
static int
|
|
||||||
zfs_lock(struct vop_lock1_args *ap)
|
|
||||||
{
|
|
||||||
vnode_t *vp;
|
|
||||||
znode_t *zp;
|
|
||||||
int err;
|
|
||||||
|
|
||||||
#if __FreeBSD_version >= 1300064
|
|
||||||
err = vop_lock(ap);
|
|
||||||
#else
|
|
||||||
err = vop_stdlock(ap);
|
|
||||||
#endif
|
|
||||||
if (err == 0 && (ap->a_flags & LK_NOWAIT) == 0) {
|
|
||||||
vp = ap->a_vp;
|
|
||||||
zp = vp->v_data;
|
|
||||||
if (vp->v_mount != NULL && !VN_IS_DOOMED(vp) &&
|
|
||||||
zp != NULL && (zp->z_pflags & ZFS_XATTR) == 0)
|
|
||||||
VERIFY(!ZFS_TEARDOWN_HELD(zp->z_zfsvfs));
|
|
||||||
}
|
|
||||||
return (err);
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
|
|
||||||
struct vop_vector zfs_vnodeops;
|
struct vop_vector zfs_vnodeops;
|
||||||
struct vop_vector zfs_fifoops;
|
struct vop_vector zfs_fifoops;
|
||||||
struct vop_vector zfs_shareops;
|
struct vop_vector zfs_shareops;
|
||||||
@ -6606,17 +6569,9 @@ struct vop_vector zfs_vnodeops = {
|
|||||||
.vop_putpages = zfs_freebsd_putpages,
|
.vop_putpages = zfs_freebsd_putpages,
|
||||||
.vop_vptocnp = zfs_vptocnp,
|
.vop_vptocnp = zfs_vptocnp,
|
||||||
#if __FreeBSD_version >= 1300064
|
#if __FreeBSD_version >= 1300064
|
||||||
#ifdef DIAGNOSTIC
|
|
||||||
.vop_lock1 = zfs_lock,
|
|
||||||
#else
|
|
||||||
.vop_lock1 = vop_lock,
|
.vop_lock1 = vop_lock,
|
||||||
#endif
|
|
||||||
.vop_unlock = vop_unlock,
|
.vop_unlock = vop_unlock,
|
||||||
.vop_islocked = vop_islocked,
|
.vop_islocked = vop_islocked,
|
||||||
#else
|
|
||||||
#ifdef DIAGNOSTIC
|
|
||||||
.vop_lock1 = zfs_lock,
|
|
||||||
#endif
|
|
||||||
#endif
|
#endif
|
||||||
};
|
};
|
||||||
VFS_VOP_VECTOR_REGISTER(zfs_vnodeops);
|
VFS_VOP_VECTOR_REGISTER(zfs_vnodeops);
|
||||||
|
Loading…
Reference in New Issue
Block a user