mirror of
https://git.FreeBSD.org/src.git
synced 2025-01-01 12:19:28 +00:00
vnode_if: fix locking protocol description for lookup and cachedlookup
Also remove the checks from vop_lookup_pre and vop_lookup_post, which are now completely redundant (before this change they were partially redundant). Discussed with: kib MFC after: 10 days
This commit is contained in:
parent
dbe922173c
commit
c496727c54
Notes:
svn2git
2020-12-20 02:59:44 +00:00
svn path=/head/; revision=243271
@ -4104,35 +4104,11 @@ vop_strategy_pre(void *ap)
|
||||
void
|
||||
vop_lookup_pre(void *ap)
|
||||
{
|
||||
#ifdef DEBUG_VFS_LOCKS
|
||||
struct vop_lookup_args *a;
|
||||
struct vnode *dvp;
|
||||
|
||||
a = ap;
|
||||
dvp = a->a_dvp;
|
||||
ASSERT_VI_UNLOCKED(dvp, "VOP_LOOKUP");
|
||||
ASSERT_VOP_LOCKED(dvp, "VOP_LOOKUP");
|
||||
#endif
|
||||
}
|
||||
|
||||
void
|
||||
vop_lookup_post(void *ap, int rc)
|
||||
{
|
||||
#ifdef DEBUG_VFS_LOCKS
|
||||
struct vop_lookup_args *a;
|
||||
struct vnode *dvp;
|
||||
struct vnode *vp;
|
||||
|
||||
a = ap;
|
||||
dvp = a->a_dvp;
|
||||
vp = *(a->a_vpp);
|
||||
|
||||
ASSERT_VI_UNLOCKED(dvp, "VOP_LOOKUP");
|
||||
ASSERT_VOP_LOCKED(dvp, "VOP_LOOKUP");
|
||||
|
||||
if (!rc)
|
||||
ASSERT_VOP_LOCKED(vp, "VOP_LOOKUP (child)");
|
||||
#endif
|
||||
}
|
||||
|
||||
void
|
||||
|
@ -63,7 +63,7 @@ vop_islocked {
|
||||
IN struct vnode *vp;
|
||||
};
|
||||
|
||||
%% lookup dvp L ? ?
|
||||
%% lookup dvp L L L
|
||||
%% lookup vpp - L -
|
||||
%! lookup pre vop_lookup_pre
|
||||
%! lookup post vop_lookup_post
|
||||
@ -78,7 +78,7 @@ vop_lookup {
|
||||
IN struct componentname *cnp;
|
||||
};
|
||||
|
||||
%% cachedlookup dvp L ? ?
|
||||
%% cachedlookup dvp L L L
|
||||
%% cachedlookup vpp - L -
|
||||
|
||||
# This must be an exact copy of lookup. See kern/vfs_cache.c for details.
|
||||
|
Loading…
Reference in New Issue
Block a user