diff options
author | 2018-03-28 16:34:28 +0000 | |
---|---|---|
committer | 2018-03-28 16:34:28 +0000 | |
commit | d78cb2ffdac0b6a8690a0d0268283287e63c9871 (patch) | |
tree | 58527bf5c044249fe3d7553d1c7021f1e69062f3 | |
parent | - memory leak occurs when adding same table twice. (diff) | |
download | wireguard-openbsd-d78cb2ffdac0b6a8690a0d0268283287e63c9871.tar.xz wireguard-openbsd-d78cb2ffdac0b6a8690a0d0268283287e63c9871.zip |
Use RWL_IS_VNODE with locks that are acquired through VOP_LOCK(),
to appease WITNESS. ext2fs and ffs already use the flag. The same
locking pattern appears with other file systems too, so this patch
addresses the remaining cases.
OK mpi@
-rw-r--r-- | sys/isofs/cd9660/cd9660_vfsops.c | 4 | ||||
-rw-r--r-- | sys/isofs/udf/udf_vfsops.c | 4 | ||||
-rw-r--r-- | sys/miscfs/fuse/fuse_vfsops.c | 5 | ||||
-rw-r--r-- | sys/msdosfs/msdosfs_denode.c | 4 | ||||
-rw-r--r-- | sys/tmpfs/tmpfs_subr.c | 4 |
5 files changed, 11 insertions, 10 deletions
diff --git a/sys/isofs/cd9660/cd9660_vfsops.c b/sys/isofs/cd9660/cd9660_vfsops.c index ac3df59ad1b..be84d998b74 100644 --- a/sys/isofs/cd9660/cd9660_vfsops.c +++ b/sys/isofs/cd9660/cd9660_vfsops.c @@ -1,4 +1,4 @@ -/* $OpenBSD: cd9660_vfsops.c,v 1.87 2018/02/10 05:24:23 deraadt Exp $ */ +/* $OpenBSD: cd9660_vfsops.c,v 1.88 2018/03/28 16:34:28 visa Exp $ */ /* $NetBSD: cd9660_vfsops.c,v 1.26 1997/06/13 15:38:58 pk Exp $ */ /*- @@ -755,7 +755,7 @@ retry: return (error); } ip = malloc(sizeof(*ip), M_ISOFSNODE, M_WAITOK | M_ZERO); - rrw_init_flags(&ip->i_lock, "isoinode", RWL_DUPOK); + rrw_init_flags(&ip->i_lock, "isoinode", RWL_DUPOK | RWL_IS_VNODE); vp->v_data = ip; ip->i_vnode = vp; ip->i_dev = dev; diff --git a/sys/isofs/udf/udf_vfsops.c b/sys/isofs/udf/udf_vfsops.c index 8a0173db611..7e917a7fe86 100644 --- a/sys/isofs/udf/udf_vfsops.c +++ b/sys/isofs/udf/udf_vfsops.c @@ -1,4 +1,4 @@ -/* $OpenBSD: udf_vfsops.c,v 1.62 2018/02/10 05:24:23 deraadt Exp $ */ +/* $OpenBSD: udf_vfsops.c,v 1.63 2018/03/28 16:34:28 visa Exp $ */ /* * Copyright (c) 2001, 2002 Scott Long <scottl@freebsd.org> @@ -638,7 +638,7 @@ udf_vget(struct mount *mp, ino_t ino, struct vnode **vpp) vp->v_data = up; vref(ump->um_devvp); - rrw_init_flags(&up->u_lock, "unode", RWL_DUPOK); + rrw_init_flags(&up->u_lock, "unode", RWL_DUPOK | RWL_IS_VNODE); /* * udf_hashins() will lock the vnode for us. diff --git a/sys/miscfs/fuse/fuse_vfsops.c b/sys/miscfs/fuse/fuse_vfsops.c index 7f7b044f458..6640e4cfb5a 100644 --- a/sys/miscfs/fuse/fuse_vfsops.c +++ b/sys/miscfs/fuse/fuse_vfsops.c @@ -1,4 +1,4 @@ -/* $OpenBSD: fuse_vfsops.c,v 1.32 2018/02/10 05:24:23 deraadt Exp $ */ +/* $OpenBSD: fuse_vfsops.c,v 1.33 2018/03/28 16:34:28 visa Exp $ */ /* * Copyright (c) 2012-2013 Sylvestre Gallon <ccna.syl@gmail.com> * @@ -271,7 +271,8 @@ retry: } ip = malloc(sizeof(*ip), M_FUSEFS, M_WAITOK | M_ZERO); - rrw_init_flags(&ip->ufs_ino.i_lock, "fuseinode", RWL_DUPOK); + rrw_init_flags(&ip->ufs_ino.i_lock, "fuseinode", + RWL_DUPOK | RWL_IS_VNODE); nvp->v_data = ip; ip->ufs_ino.i_vnode = nvp; ip->ufs_ino.i_dev = fmp->dev; diff --git a/sys/msdosfs/msdosfs_denode.c b/sys/msdosfs/msdosfs_denode.c index db2dce6257b..c2755607dbc 100644 --- a/sys/msdosfs/msdosfs_denode.c +++ b/sys/msdosfs/msdosfs_denode.c @@ -1,4 +1,4 @@ -/* $OpenBSD: msdosfs_denode.c,v 1.59 2017/08/14 22:43:56 sf Exp $ */ +/* $OpenBSD: msdosfs_denode.c,v 1.60 2018/03/28 16:34:28 visa Exp $ */ /* $NetBSD: msdosfs_denode.c,v 1.23 1997/10/17 11:23:58 ws Exp $ */ /*- @@ -233,7 +233,7 @@ retry: return (error); } ldep = malloc(sizeof(*ldep), M_MSDOSFSNODE, M_WAITOK | M_ZERO); - rrw_init_flags(&ldep->de_lock, "denode", RWL_DUPOK); + rrw_init_flags(&ldep->de_lock, "denode", RWL_DUPOK | RWL_IS_VNODE); nvp->v_data = ldep; ldep->de_vnode = nvp; ldep->de_flag = 0; diff --git a/sys/tmpfs/tmpfs_subr.c b/sys/tmpfs/tmpfs_subr.c index adc982184e9..037de2f4bb9 100644 --- a/sys/tmpfs/tmpfs_subr.c +++ b/sys/tmpfs/tmpfs_subr.c @@ -1,4 +1,4 @@ -/* $OpenBSD: tmpfs_subr.c,v 1.18 2017/04/20 14:13:00 visa Exp $ */ +/* $OpenBSD: tmpfs_subr.c,v 1.19 2018/03/28 16:34:28 visa Exp $ */ /* $NetBSD: tmpfs_subr.c,v 1.79 2012/03/13 18:40:50 elad Exp $ */ /* @@ -314,7 +314,7 @@ again: return error; } - rrw_init_flags(&node->tn_vlock, "tnode", RWL_DUPOK); + rrw_init_flags(&node->tn_vlock, "tnode", RWL_DUPOK | RWL_IS_VNODE); vp->v_type = node->tn_type; /* Type-specific initialization. */ |