aboutsummaryrefslogtreecommitdiff
path: root/sys/sys
diff options
context:
space:
mode:
authorKonstantin Belousov <kib@FreeBSD.org>2020-11-13 09:31:57 +0000
committerKonstantin Belousov <kib@FreeBSD.org>2020-11-13 09:31:57 +0000
commit7cde2ec4fdb20cac4f1f1fff1a8604028b36b42c (patch)
tree64dddc41982cc0a2880c9f157184a728da83a43b /sys/sys
parent5dc463f9a5abf311e886e0000e5df1428415bbbf (diff)
downloadsrc-7cde2ec4fdb20cac4f1f1fff1a8604028b36b42c.tar.gz
src-7cde2ec4fdb20cac4f1f1fff1a8604028b36b42c.zip
Implement vn_lock_pair().
In collaboration with: pho Reviewed by: mckusick (previous version), markj (previous version) Tested by: markj (syzkaller), pho Sponsored by: The FreeBSD Foundation Differential revision: https://reviews.freebsd.org/D26136
Notes
Notes: svn path=/head/; revision=367631
Diffstat (limited to 'sys/sys')
-rw-r--r--sys/sys/vnode.h2
1 files changed, 2 insertions, 0 deletions
diff --git a/sys/sys/vnode.h b/sys/sys/vnode.h
index 735968cbafac..b2265e34fac0 100644
--- a/sys/sys/vnode.h
+++ b/sys/sys/vnode.h
@@ -729,6 +729,8 @@ bool vn_isdisk_error(struct vnode *vp, int *errp);
bool vn_isdisk(struct vnode *vp);
int _vn_lock(struct vnode *vp, int flags, const char *file, int line);
#define vn_lock(vp, flags) _vn_lock(vp, flags, __FILE__, __LINE__)
+void vn_lock_pair(struct vnode *vp1, bool vp1_locked, struct vnode *vp2,
+ bool vp2_locked);
int vn_open(struct nameidata *ndp, int *flagp, int cmode, struct file *fp);
int vn_open_cred(struct nameidata *ndp, int *flagp, int cmode,
u_int vn_open_flags, struct ucred *cred, struct file *fp);