As described by the submitter:
Reverse the VFS_VRELE patch. Reference counting of vnodes does not need to be done per-fs. I noticed this while fixing vfs layering violations. Doing reference counting in generic code is also the preference cited by John Heidemann in recent discussions with him. The implementation of alternative vnode management per-fs is still a valid requirement for some filesystems but will be revisited sometime later, most likely using a different framework. Submitted by: Michael Hancock <michaelh@cet.co.jp>
This commit is contained in:
parent
8fddb21ee2
commit
79cc756d8b
Notes:
svn2git
2020-12-20 02:59:44 +00:00
svn path=/head/; revision=35769
@ -36,7 +36,7 @@
|
||||
* SUCH DAMAGE.
|
||||
*
|
||||
* @(#)cd9660_vfsops.c 8.18 (Berkeley) 5/22/95
|
||||
* $Id: cd9660_vfsops.c,v 1.37 1998/04/20 03:57:27 julian Exp $
|
||||
* $Id: cd9660_vfsops.c,v 1.38 1998/04/20 23:18:46 julian Exp $
|
||||
*/
|
||||
|
||||
#include <sys/param.h>
|
||||
@ -73,7 +73,6 @@ static int cd9660_statfs __P((struct mount *, struct statfs *, struct proc *));
|
||||
static int cd9660_sync __P((struct mount *, int, struct ucred *,
|
||||
struct proc *));
|
||||
static int cd9660_vget __P((struct mount *, ino_t, struct vnode **));
|
||||
static int cd9660_vrele __P((struct mount *, struct vnode *));
|
||||
static int cd9660_fhtovp __P((struct mount *, struct fid *, struct sockaddr *,
|
||||
struct vnode **, int *, struct ucred **));
|
||||
static int cd9660_vptofh __P((struct vnode *, struct fid *));
|
||||
@ -87,7 +86,6 @@ static struct vfsops cd9660_vfsops = {
|
||||
cd9660_statfs,
|
||||
cd9660_sync,
|
||||
cd9660_vget,
|
||||
cd9660_vrele,
|
||||
cd9660_fhtovp,
|
||||
cd9660_vptofh,
|
||||
cd9660_init
|
||||
@ -679,19 +677,6 @@ cd9660_vget(mp, ino, vpp)
|
||||
(struct iso_directory_record *)0));
|
||||
}
|
||||
|
||||
/*
|
||||
* Complement to all vpp returning ops.
|
||||
* XXX - initially only to get rid of WILLRELE.
|
||||
*/
|
||||
/* ARGSUSED */
|
||||
static int
|
||||
cd9660_vrele(mp, vp)
|
||||
struct mount *mp;
|
||||
struct vnode *vp;
|
||||
{
|
||||
return (EOPNOTSUPP);
|
||||
}
|
||||
|
||||
int
|
||||
cd9660_vget_internal(mp, ino, vpp, relocated, isodir)
|
||||
struct mount *mp;
|
||||
|
@ -35,7 +35,7 @@
|
||||
*
|
||||
* @(#)fdesc_vfsops.c 8.4 (Berkeley) 1/21/94
|
||||
*
|
||||
* $Id: fdesc_vfsops.c,v 1.13 1997/10/12 20:24:39 phk Exp $
|
||||
* $Id: fdesc_vfsops.c,v 1.14 1998/03/01 22:46:10 msmith Exp $
|
||||
*/
|
||||
|
||||
/*
|
||||
@ -71,7 +71,6 @@ static int fdesc_sync __P((struct mount *mp, int waitfor,
|
||||
struct ucred *cred, struct proc *p));
|
||||
static int fdesc_vget __P((struct mount *mp, ino_t ino,
|
||||
struct vnode **vpp));
|
||||
static int fdesc_vrele __P((struct mount *mp, struct vnode *vp));
|
||||
static int fdesc_vptofh __P((struct vnode *vp, struct fid *fhp));
|
||||
|
||||
/*
|
||||
@ -254,8 +253,6 @@ fdesc_sync(mp, waitfor, cred, p)
|
||||
size_t, struct proc *)))eopnotsupp)
|
||||
#define fdesc_vget ((int (*) __P((struct mount *, ino_t, struct vnode **))) \
|
||||
eopnotsupp)
|
||||
#define fdesc_vrele ((int (*) __P((struct mount *, struct vnode *))) \
|
||||
eopnotsupp)
|
||||
#define fdesc_vptofh ((int (*) __P((struct vnode *, struct fid *)))eopnotsupp)
|
||||
|
||||
static struct vfsops fdesc_vfsops = {
|
||||
@ -267,7 +264,6 @@ static struct vfsops fdesc_vfsops = {
|
||||
fdesc_statfs,
|
||||
fdesc_sync,
|
||||
fdesc_vget,
|
||||
fdesc_vrele,
|
||||
fdesc_fhtovp,
|
||||
fdesc_vptofh,
|
||||
fdesc_init,
|
||||
|
@ -1,4 +1,4 @@
|
||||
/* $Id: msdosfs_vfsops.c,v 1.33 1998/04/15 11:04:53 dt Exp $ */
|
||||
/* $Id: msdosfs_vfsops.c,v 1.34 1998/04/29 12:55:51 dt Exp $ */
|
||||
/* $NetBSD: msdosfs_vfsops.c,v 1.51 1997/11/17 15:36:58 ws Exp $ */
|
||||
|
||||
/*-
|
||||
@ -1010,7 +1010,6 @@ static struct vfsops msdosfs_vfsops = {
|
||||
msdosfs_statfs,
|
||||
msdosfs_sync,
|
||||
msdosfs_vget,
|
||||
vfs_vrele,
|
||||
msdosfs_fhtovp,
|
||||
msdosfs_vptofh,
|
||||
msdosfs_init
|
||||
|
@ -36,7 +36,7 @@
|
||||
* @(#)null_vfsops.c 8.2 (Berkeley) 1/21/94
|
||||
*
|
||||
* @(#)lofs_vfsops.c 1.2 (Berkeley) 6/18/92
|
||||
* $Id: null_vfsops.c,v 1.24 1998/02/06 12:13:40 eivind Exp $
|
||||
* $Id: null_vfsops.c,v 1.25 1998/03/01 22:46:18 msmith Exp $
|
||||
*/
|
||||
|
||||
/*
|
||||
@ -75,7 +75,6 @@ static int nullfs_unmount __P((struct mount *mp, int mntflags,
|
||||
struct proc *p));
|
||||
static int nullfs_vget __P((struct mount *mp, ino_t ino,
|
||||
struct vnode **vpp));
|
||||
static int nullfs_vrele __P((struct mount *mp, struct vnode *vp));
|
||||
static int nullfs_vptofh __P((struct vnode *vp, struct fid *fhp));
|
||||
|
||||
/*
|
||||
@ -389,24 +388,6 @@ nullfs_vget(mp, ino, vpp)
|
||||
return VFS_VGET(MOUNTTONULLMOUNT(mp)->nullm_vfs, ino, vpp);
|
||||
}
|
||||
|
||||
/*
|
||||
* Complement to all vpp returning ops.
|
||||
* XXX - initially only to get rid of WILLRELE.
|
||||
*/
|
||||
/* ARGSUSED */
|
||||
static int
|
||||
nullfs_vrele(mp, vp)
|
||||
struct mount *mp;
|
||||
struct vnode *vp;
|
||||
{
|
||||
int error = 0;
|
||||
|
||||
error = VFS_VRELE(MOUNTTONULLMOUNT(mp)->nullm_vfs,
|
||||
NULLVPTOLOWERVP(vp));
|
||||
vrele(vp);
|
||||
return (error);
|
||||
}
|
||||
|
||||
static int
|
||||
nullfs_fhtovp(mp, fidp, nam, vpp, exflagsp, credanonp)
|
||||
struct mount *mp;
|
||||
@ -438,7 +419,6 @@ static struct vfsops null_vfsops = {
|
||||
nullfs_statfs,
|
||||
nullfs_sync,
|
||||
nullfs_vget,
|
||||
nullfs_vrele,
|
||||
nullfs_fhtovp,
|
||||
nullfs_vptofh,
|
||||
nullfs_init,
|
||||
|
@ -35,7 +35,7 @@
|
||||
*
|
||||
* @(#)portal_vfsops.c 8.11 (Berkeley) 5/14/95
|
||||
*
|
||||
* $Id: portal_vfsops.c,v 1.19 1998/01/01 08:28:11 bde Exp $
|
||||
* $Id: portal_vfsops.c,v 1.20 1998/03/01 22:46:20 msmith Exp $
|
||||
*/
|
||||
|
||||
/*
|
||||
@ -273,8 +273,6 @@ portal_statfs(mp, sbp, p)
|
||||
size_t, struct proc *)))eopnotsupp)
|
||||
#define portal_vget ((int (*) __P((struct mount *, ino_t, struct vnode **))) \
|
||||
eopnotsupp)
|
||||
#define portal_vrele ((int (*) __P((struct mount *, struct vnode *))) \
|
||||
eopnotsupp)
|
||||
#define portal_vptofh ((int (*) __P((struct vnode *, struct fid *)))eopnotsupp)
|
||||
|
||||
static struct vfsops portal_vfsops = {
|
||||
@ -286,7 +284,6 @@ static struct vfsops portal_vfsops = {
|
||||
portal_statfs,
|
||||
portal_sync,
|
||||
portal_vget,
|
||||
portal_vrele,
|
||||
portal_fhtovp,
|
||||
portal_vptofh,
|
||||
portal_init,
|
||||
|
@ -36,7 +36,7 @@
|
||||
*
|
||||
* @(#)procfs_vfsops.c 8.7 (Berkeley) 5/10/95
|
||||
*
|
||||
* $Id: procfs_vfsops.c,v 1.19 1997/12/30 08:46:44 bde Exp $
|
||||
* $Id: procfs_vfsops.c,v 1.20 1998/03/01 22:46:22 msmith Exp $
|
||||
*/
|
||||
|
||||
/*
|
||||
@ -193,8 +193,6 @@ procfs_init(vfsp)
|
||||
size_t, struct proc *)))eopnotsupp)
|
||||
#define procfs_vget ((int (*) __P((struct mount *, ino_t, struct vnode **))) \
|
||||
eopnotsupp)
|
||||
#define procfs_vrele ((int (*) __P((struct mount *, struct vnode *))) \
|
||||
eopnotsupp)
|
||||
#define procfs_vptofh ((int (*) __P((struct vnode *, struct fid *)))einval)
|
||||
|
||||
static struct vfsops procfs_vfsops = {
|
||||
@ -206,7 +204,6 @@ static struct vfsops procfs_vfsops = {
|
||||
procfs_statfs,
|
||||
procfs_sync,
|
||||
procfs_vget,
|
||||
procfs_vrele,
|
||||
procfs_fhtovp,
|
||||
procfs_vptofh,
|
||||
procfs_init,
|
||||
|
@ -35,7 +35,7 @@
|
||||
*
|
||||
* @(#)umap_vfsops.c 8.8 (Berkeley) 5/14/95
|
||||
*
|
||||
* $Id: umap_vfsops.c,v 1.20 1998/02/07 01:34:32 kato Exp $
|
||||
* $Id: umap_vfsops.c,v 1.21 1998/03/01 22:46:24 msmith Exp $
|
||||
*/
|
||||
|
||||
/*
|
||||
@ -72,7 +72,6 @@ static int umapfs_unmount __P((struct mount *mp, int mntflags,
|
||||
struct proc *p));
|
||||
static int umapfs_vget __P((struct mount *mp, ino_t ino,
|
||||
struct vnode **vpp));
|
||||
static int umapfs_vrele __P((struct mount *mp, struct vnode *vp));
|
||||
static int umapfs_vptofh __P((struct vnode *vp, struct fid *fhp));
|
||||
|
||||
/*
|
||||
@ -394,20 +393,6 @@ umapfs_vget(mp, ino, vpp)
|
||||
return (VFS_VGET(MOUNTTOUMAPMOUNT(mp)->umapm_vfs, ino, vpp));
|
||||
}
|
||||
|
||||
/*
|
||||
* Complement to all vpp returning ops.
|
||||
* XXX - initially only to get rid of WILLRELE.
|
||||
*/
|
||||
/* ARGSUSED */
|
||||
static int
|
||||
umapfs_vrele(mp, vp)
|
||||
struct mount *mp;
|
||||
struct vnode *vp;
|
||||
{
|
||||
vrele(vp);
|
||||
return (0);
|
||||
}
|
||||
|
||||
static int
|
||||
umapfs_fhtovp(mp, fidp, nam, vpp, exflagsp, credanonp)
|
||||
struct mount *mp;
|
||||
@ -438,7 +423,6 @@ static struct vfsops umap_vfsops = {
|
||||
umapfs_statfs,
|
||||
umapfs_sync,
|
||||
umapfs_vget,
|
||||
umapfs_vrele,
|
||||
umapfs_fhtovp,
|
||||
umapfs_vptofh,
|
||||
umapfs_init,
|
||||
|
@ -35,7 +35,7 @@
|
||||
* SUCH DAMAGE.
|
||||
*
|
||||
* @(#)union_vfsops.c 8.20 (Berkeley) 5/20/95
|
||||
* $Id: union_vfsops.c,v 1.27 1998/03/01 22:46:25 msmith Exp $
|
||||
* $Id: union_vfsops.c,v 1.28 1998/04/17 22:36:56 des Exp $
|
||||
*/
|
||||
|
||||
/*
|
||||
@ -74,7 +74,6 @@ static int union_unmount __P((struct mount *mp, int mntflags,
|
||||
struct proc *p));
|
||||
extern int union_vget __P((struct mount *mp, ino_t ino,
|
||||
struct vnode **vpp));
|
||||
static int union_vrele __P((struct mount *mp, struct vnode *vp));
|
||||
extern int union_vptofh __P((struct vnode *vp, struct fid *fhp));
|
||||
|
||||
/*
|
||||
@ -523,21 +522,6 @@ union_statfs(mp, sbp, p)
|
||||
return (0);
|
||||
}
|
||||
|
||||
/*
|
||||
* Complement to all vpp returning ops.
|
||||
* XXX - initially only to get rid of WILLRELE.
|
||||
* XXX - may change when modification of vops start.
|
||||
*/
|
||||
/* ARGSUSED */
|
||||
static int
|
||||
union_vrele(mp, vp)
|
||||
struct mount *mp;
|
||||
struct vnode *vp;
|
||||
{
|
||||
vrele(vp);
|
||||
return (0);
|
||||
}
|
||||
|
||||
/*
|
||||
* XXX - Assumes no data cached at union layer.
|
||||
*/
|
||||
@ -563,7 +547,6 @@ static struct vfsops union_vfsops = {
|
||||
union_statfs,
|
||||
union_sync,
|
||||
union_vget,
|
||||
union_vrele,
|
||||
union_fhtovp,
|
||||
union_vptofh,
|
||||
union_init,
|
||||
|
@ -93,7 +93,6 @@ static struct vfsops ext2fs_vfsops = {
|
||||
ext2_statfs,
|
||||
ext2_sync,
|
||||
ext2_vget,
|
||||
vfs_vrele,
|
||||
ext2_fhtovp,
|
||||
ext2_vptofh,
|
||||
ext2_init,
|
||||
|
@ -93,7 +93,6 @@ static struct vfsops ext2fs_vfsops = {
|
||||
ext2_statfs,
|
||||
ext2_sync,
|
||||
ext2_vget,
|
||||
vfs_vrele,
|
||||
ext2_fhtovp,
|
||||
ext2_vptofh,
|
||||
ext2_init,
|
||||
|
@ -36,7 +36,7 @@
|
||||
* SUCH DAMAGE.
|
||||
*
|
||||
* @(#)cd9660_vfsops.c 8.18 (Berkeley) 5/22/95
|
||||
* $Id: cd9660_vfsops.c,v 1.37 1998/04/20 03:57:27 julian Exp $
|
||||
* $Id: cd9660_vfsops.c,v 1.38 1998/04/20 23:18:46 julian Exp $
|
||||
*/
|
||||
|
||||
#include <sys/param.h>
|
||||
@ -73,7 +73,6 @@ static int cd9660_statfs __P((struct mount *, struct statfs *, struct proc *));
|
||||
static int cd9660_sync __P((struct mount *, int, struct ucred *,
|
||||
struct proc *));
|
||||
static int cd9660_vget __P((struct mount *, ino_t, struct vnode **));
|
||||
static int cd9660_vrele __P((struct mount *, struct vnode *));
|
||||
static int cd9660_fhtovp __P((struct mount *, struct fid *, struct sockaddr *,
|
||||
struct vnode **, int *, struct ucred **));
|
||||
static int cd9660_vptofh __P((struct vnode *, struct fid *));
|
||||
@ -87,7 +86,6 @@ static struct vfsops cd9660_vfsops = {
|
||||
cd9660_statfs,
|
||||
cd9660_sync,
|
||||
cd9660_vget,
|
||||
cd9660_vrele,
|
||||
cd9660_fhtovp,
|
||||
cd9660_vptofh,
|
||||
cd9660_init
|
||||
@ -679,19 +677,6 @@ cd9660_vget(mp, ino, vpp)
|
||||
(struct iso_directory_record *)0));
|
||||
}
|
||||
|
||||
/*
|
||||
* Complement to all vpp returning ops.
|
||||
* XXX - initially only to get rid of WILLRELE.
|
||||
*/
|
||||
/* ARGSUSED */
|
||||
static int
|
||||
cd9660_vrele(mp, vp)
|
||||
struct mount *mp;
|
||||
struct vnode *vp;
|
||||
{
|
||||
return (EOPNOTSUPP);
|
||||
}
|
||||
|
||||
int
|
||||
cd9660_vget_internal(mp, ino, vpp, relocated, isodir)
|
||||
struct mount *mp;
|
||||
|
@ -44,31 +44,8 @@
|
||||
#include <sys/malloc.h>
|
||||
#include <sys/unistd.h>
|
||||
#include <sys/vnode.h>
|
||||
#include <sys/mount.h>
|
||||
#include <sys/poll.h>
|
||||
|
||||
/*
|
||||
* VFS operations
|
||||
*/
|
||||
|
||||
/*
|
||||
* Complement to all vpp returning ops.
|
||||
* XXX - initially only to get rid of WILLRELE.
|
||||
*/
|
||||
/* ARGSUSED */
|
||||
int
|
||||
vfs_vrele(mp, vp)
|
||||
struct mount *mp;
|
||||
struct vnode *vp;
|
||||
{
|
||||
vrele(vp);
|
||||
return (0);
|
||||
}
|
||||
|
||||
/*
|
||||
* vnode operations
|
||||
*/
|
||||
|
||||
static int vop_nostrategy __P((struct vop_strategy_args *));
|
||||
|
||||
/*
|
||||
|
@ -23,7 +23,7 @@
|
||||
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
|
||||
* SUCH DAMAGE.
|
||||
*
|
||||
* $Id: devfs_vfsops.c,v 1.28 1998/04/17 22:36:53 des Exp $
|
||||
* $Id: devfs_vfsops.c,v 1.29 1998/04/19 23:32:12 julian Exp $
|
||||
*
|
||||
*/
|
||||
|
||||
@ -342,7 +342,6 @@ static struct vfsops devfs_vfsops = {
|
||||
devfs_statfs,
|
||||
devfs_sync,
|
||||
devfs_vget,
|
||||
vfs_vrele,
|
||||
devfs_fhtovp,
|
||||
devfs_vptofh,
|
||||
devfs_init
|
||||
|
@ -35,7 +35,7 @@
|
||||
*
|
||||
* @(#)fdesc_vfsops.c 8.4 (Berkeley) 1/21/94
|
||||
*
|
||||
* $Id: fdesc_vfsops.c,v 1.13 1997/10/12 20:24:39 phk Exp $
|
||||
* $Id: fdesc_vfsops.c,v 1.14 1998/03/01 22:46:10 msmith Exp $
|
||||
*/
|
||||
|
||||
/*
|
||||
@ -71,7 +71,6 @@ static int fdesc_sync __P((struct mount *mp, int waitfor,
|
||||
struct ucred *cred, struct proc *p));
|
||||
static int fdesc_vget __P((struct mount *mp, ino_t ino,
|
||||
struct vnode **vpp));
|
||||
static int fdesc_vrele __P((struct mount *mp, struct vnode *vp));
|
||||
static int fdesc_vptofh __P((struct vnode *vp, struct fid *fhp));
|
||||
|
||||
/*
|
||||
@ -254,8 +253,6 @@ fdesc_sync(mp, waitfor, cred, p)
|
||||
size_t, struct proc *)))eopnotsupp)
|
||||
#define fdesc_vget ((int (*) __P((struct mount *, ino_t, struct vnode **))) \
|
||||
eopnotsupp)
|
||||
#define fdesc_vrele ((int (*) __P((struct mount *, struct vnode *))) \
|
||||
eopnotsupp)
|
||||
#define fdesc_vptofh ((int (*) __P((struct vnode *, struct fid *)))eopnotsupp)
|
||||
|
||||
static struct vfsops fdesc_vfsops = {
|
||||
@ -267,7 +264,6 @@ static struct vfsops fdesc_vfsops = {
|
||||
fdesc_statfs,
|
||||
fdesc_sync,
|
||||
fdesc_vget,
|
||||
fdesc_vrele,
|
||||
fdesc_fhtovp,
|
||||
fdesc_vptofh,
|
||||
fdesc_init,
|
||||
|
@ -34,7 +34,7 @@
|
||||
* SUCH DAMAGE.
|
||||
*
|
||||
* @(#)kernfs.h 8.6 (Berkeley) 3/29/95
|
||||
* $Id: kernfs.h,v 1.8 1997/09/07 05:25:58 bde Exp $
|
||||
* $Id: kernfs.h,v 1.9 1998/03/01 22:46:12 msmith Exp $
|
||||
*/
|
||||
|
||||
#define _PATH_KERNFS "/kern" /* Default mountpoint */
|
||||
@ -61,8 +61,6 @@ struct kernfs_node {
|
||||
size_t, struct proc *)))eopnotsupp)
|
||||
#define kernfs_vget ((int (*) __P((struct mount *, ino_t, struct vnode **))) \
|
||||
eopnotsupp)
|
||||
#define kernfs_vrele ((int (*) __P((struct mount *, struct vnode *))) \
|
||||
eopnotsupp)
|
||||
#define kernfs_vptofh ((int (*) __P((struct vnode *, struct fid *)))eopnotsupp)
|
||||
extern vop_t **kernfs_vnodeop_p;
|
||||
extern dev_t rrootdev;
|
||||
|
@ -34,7 +34,7 @@
|
||||
* SUCH DAMAGE.
|
||||
*
|
||||
* @(#)kernfs_vfsops.c 8.10 (Berkeley) 5/14/95
|
||||
* $Id: kernfs_vfsops.c,v 1.20 1997/10/12 20:24:48 phk Exp $
|
||||
* $Id: kernfs_vfsops.c,v 1.21 1998/03/01 22:46:12 msmith Exp $
|
||||
*/
|
||||
|
||||
/*
|
||||
@ -278,7 +278,6 @@ static struct vfsops kernfs_vfsops = {
|
||||
kernfs_statfs,
|
||||
kernfs_sync,
|
||||
kernfs_vget,
|
||||
kernfs_vrele,
|
||||
kernfs_fhtovp,
|
||||
kernfs_vptofh,
|
||||
kernfs_init,
|
||||
|
@ -36,7 +36,7 @@
|
||||
* @(#)null_vfsops.c 8.2 (Berkeley) 1/21/94
|
||||
*
|
||||
* @(#)lofs_vfsops.c 1.2 (Berkeley) 6/18/92
|
||||
* $Id: null_vfsops.c,v 1.24 1998/02/06 12:13:40 eivind Exp $
|
||||
* $Id: null_vfsops.c,v 1.25 1998/03/01 22:46:18 msmith Exp $
|
||||
*/
|
||||
|
||||
/*
|
||||
@ -75,7 +75,6 @@ static int nullfs_unmount __P((struct mount *mp, int mntflags,
|
||||
struct proc *p));
|
||||
static int nullfs_vget __P((struct mount *mp, ino_t ino,
|
||||
struct vnode **vpp));
|
||||
static int nullfs_vrele __P((struct mount *mp, struct vnode *vp));
|
||||
static int nullfs_vptofh __P((struct vnode *vp, struct fid *fhp));
|
||||
|
||||
/*
|
||||
@ -389,24 +388,6 @@ nullfs_vget(mp, ino, vpp)
|
||||
return VFS_VGET(MOUNTTONULLMOUNT(mp)->nullm_vfs, ino, vpp);
|
||||
}
|
||||
|
||||
/*
|
||||
* Complement to all vpp returning ops.
|
||||
* XXX - initially only to get rid of WILLRELE.
|
||||
*/
|
||||
/* ARGSUSED */
|
||||
static int
|
||||
nullfs_vrele(mp, vp)
|
||||
struct mount *mp;
|
||||
struct vnode *vp;
|
||||
{
|
||||
int error = 0;
|
||||
|
||||
error = VFS_VRELE(MOUNTTONULLMOUNT(mp)->nullm_vfs,
|
||||
NULLVPTOLOWERVP(vp));
|
||||
vrele(vp);
|
||||
return (error);
|
||||
}
|
||||
|
||||
static int
|
||||
nullfs_fhtovp(mp, fidp, nam, vpp, exflagsp, credanonp)
|
||||
struct mount *mp;
|
||||
@ -438,7 +419,6 @@ static struct vfsops null_vfsops = {
|
||||
nullfs_statfs,
|
||||
nullfs_sync,
|
||||
nullfs_vget,
|
||||
nullfs_vrele,
|
||||
nullfs_fhtovp,
|
||||
nullfs_vptofh,
|
||||
nullfs_init,
|
||||
|
@ -35,7 +35,7 @@
|
||||
*
|
||||
* @(#)portal_vfsops.c 8.11 (Berkeley) 5/14/95
|
||||
*
|
||||
* $Id: portal_vfsops.c,v 1.19 1998/01/01 08:28:11 bde Exp $
|
||||
* $Id: portal_vfsops.c,v 1.20 1998/03/01 22:46:20 msmith Exp $
|
||||
*/
|
||||
|
||||
/*
|
||||
@ -273,8 +273,6 @@ portal_statfs(mp, sbp, p)
|
||||
size_t, struct proc *)))eopnotsupp)
|
||||
#define portal_vget ((int (*) __P((struct mount *, ino_t, struct vnode **))) \
|
||||
eopnotsupp)
|
||||
#define portal_vrele ((int (*) __P((struct mount *, struct vnode *))) \
|
||||
eopnotsupp)
|
||||
#define portal_vptofh ((int (*) __P((struct vnode *, struct fid *)))eopnotsupp)
|
||||
|
||||
static struct vfsops portal_vfsops = {
|
||||
@ -286,7 +284,6 @@ static struct vfsops portal_vfsops = {
|
||||
portal_statfs,
|
||||
portal_sync,
|
||||
portal_vget,
|
||||
portal_vrele,
|
||||
portal_fhtovp,
|
||||
portal_vptofh,
|
||||
portal_init,
|
||||
|
@ -36,7 +36,7 @@
|
||||
*
|
||||
* @(#)procfs_vfsops.c 8.7 (Berkeley) 5/10/95
|
||||
*
|
||||
* $Id: procfs_vfsops.c,v 1.19 1997/12/30 08:46:44 bde Exp $
|
||||
* $Id: procfs_vfsops.c,v 1.20 1998/03/01 22:46:22 msmith Exp $
|
||||
*/
|
||||
|
||||
/*
|
||||
@ -193,8 +193,6 @@ procfs_init(vfsp)
|
||||
size_t, struct proc *)))eopnotsupp)
|
||||
#define procfs_vget ((int (*) __P((struct mount *, ino_t, struct vnode **))) \
|
||||
eopnotsupp)
|
||||
#define procfs_vrele ((int (*) __P((struct mount *, struct vnode *))) \
|
||||
eopnotsupp)
|
||||
#define procfs_vptofh ((int (*) __P((struct vnode *, struct fid *)))einval)
|
||||
|
||||
static struct vfsops procfs_vfsops = {
|
||||
@ -206,7 +204,6 @@ static struct vfsops procfs_vfsops = {
|
||||
procfs_statfs,
|
||||
procfs_sync,
|
||||
procfs_vget,
|
||||
procfs_vrele,
|
||||
procfs_fhtovp,
|
||||
procfs_vptofh,
|
||||
procfs_init,
|
||||
|
@ -35,7 +35,7 @@
|
||||
*
|
||||
* @(#)umap_vfsops.c 8.8 (Berkeley) 5/14/95
|
||||
*
|
||||
* $Id: umap_vfsops.c,v 1.20 1998/02/07 01:34:32 kato Exp $
|
||||
* $Id: umap_vfsops.c,v 1.21 1998/03/01 22:46:24 msmith Exp $
|
||||
*/
|
||||
|
||||
/*
|
||||
@ -72,7 +72,6 @@ static int umapfs_unmount __P((struct mount *mp, int mntflags,
|
||||
struct proc *p));
|
||||
static int umapfs_vget __P((struct mount *mp, ino_t ino,
|
||||
struct vnode **vpp));
|
||||
static int umapfs_vrele __P((struct mount *mp, struct vnode *vp));
|
||||
static int umapfs_vptofh __P((struct vnode *vp, struct fid *fhp));
|
||||
|
||||
/*
|
||||
@ -394,20 +393,6 @@ umapfs_vget(mp, ino, vpp)
|
||||
return (VFS_VGET(MOUNTTOUMAPMOUNT(mp)->umapm_vfs, ino, vpp));
|
||||
}
|
||||
|
||||
/*
|
||||
* Complement to all vpp returning ops.
|
||||
* XXX - initially only to get rid of WILLRELE.
|
||||
*/
|
||||
/* ARGSUSED */
|
||||
static int
|
||||
umapfs_vrele(mp, vp)
|
||||
struct mount *mp;
|
||||
struct vnode *vp;
|
||||
{
|
||||
vrele(vp);
|
||||
return (0);
|
||||
}
|
||||
|
||||
static int
|
||||
umapfs_fhtovp(mp, fidp, nam, vpp, exflagsp, credanonp)
|
||||
struct mount *mp;
|
||||
@ -438,7 +423,6 @@ static struct vfsops umap_vfsops = {
|
||||
umapfs_statfs,
|
||||
umapfs_sync,
|
||||
umapfs_vget,
|
||||
umapfs_vrele,
|
||||
umapfs_fhtovp,
|
||||
umapfs_vptofh,
|
||||
umapfs_init,
|
||||
|
@ -35,7 +35,7 @@
|
||||
* SUCH DAMAGE.
|
||||
*
|
||||
* @(#)union_vfsops.c 8.20 (Berkeley) 5/20/95
|
||||
* $Id: union_vfsops.c,v 1.27 1998/03/01 22:46:25 msmith Exp $
|
||||
* $Id: union_vfsops.c,v 1.28 1998/04/17 22:36:56 des Exp $
|
||||
*/
|
||||
|
||||
/*
|
||||
@ -74,7 +74,6 @@ static int union_unmount __P((struct mount *mp, int mntflags,
|
||||
struct proc *p));
|
||||
extern int union_vget __P((struct mount *mp, ino_t ino,
|
||||
struct vnode **vpp));
|
||||
static int union_vrele __P((struct mount *mp, struct vnode *vp));
|
||||
extern int union_vptofh __P((struct vnode *vp, struct fid *fhp));
|
||||
|
||||
/*
|
||||
@ -523,21 +522,6 @@ union_statfs(mp, sbp, p)
|
||||
return (0);
|
||||
}
|
||||
|
||||
/*
|
||||
* Complement to all vpp returning ops.
|
||||
* XXX - initially only to get rid of WILLRELE.
|
||||
* XXX - may change when modification of vops start.
|
||||
*/
|
||||
/* ARGSUSED */
|
||||
static int
|
||||
union_vrele(mp, vp)
|
||||
struct mount *mp;
|
||||
struct vnode *vp;
|
||||
{
|
||||
vrele(vp);
|
||||
return (0);
|
||||
}
|
||||
|
||||
/*
|
||||
* XXX - Assumes no data cached at union layer.
|
||||
*/
|
||||
@ -563,7 +547,6 @@ static struct vfsops union_vfsops = {
|
||||
union_statfs,
|
||||
union_sync,
|
||||
union_vget,
|
||||
union_vrele,
|
||||
union_fhtovp,
|
||||
union_vptofh,
|
||||
union_init,
|
||||
|
@ -1,4 +1,4 @@
|
||||
/* $Id: msdosfs_vfsops.c,v 1.33 1998/04/15 11:04:53 dt Exp $ */
|
||||
/* $Id: msdosfs_vfsops.c,v 1.34 1998/04/29 12:55:51 dt Exp $ */
|
||||
/* $NetBSD: msdosfs_vfsops.c,v 1.51 1997/11/17 15:36:58 ws Exp $ */
|
||||
|
||||
/*-
|
||||
@ -1010,7 +1010,6 @@ static struct vfsops msdosfs_vfsops = {
|
||||
msdosfs_statfs,
|
||||
msdosfs_sync,
|
||||
msdosfs_vget,
|
||||
vfs_vrele,
|
||||
msdosfs_fhtovp,
|
||||
msdosfs_vptofh,
|
||||
msdosfs_init
|
||||
|
@ -34,7 +34,7 @@
|
||||
* SUCH DAMAGE.
|
||||
*
|
||||
* @(#)nfs_vfsops.c 8.12 (Berkeley) 5/20/95
|
||||
* $Id: nfs_vfsops.c,v 1.56 1998/03/14 03:25:18 tegge Exp $
|
||||
* $Id: nfs_vfsops.c,v 1.57 1998/03/30 09:54:23 phk Exp $
|
||||
*/
|
||||
|
||||
#include <sys/param.h>
|
||||
@ -124,7 +124,6 @@ static struct vfsops nfs_vfsops = {
|
||||
nfs_statfs,
|
||||
nfs_sync,
|
||||
nfs_vget,
|
||||
vfs_vrele,
|
||||
nfs_fhtovp,
|
||||
nfs_vptofh,
|
||||
nfs_init
|
||||
|
@ -34,7 +34,7 @@
|
||||
* SUCH DAMAGE.
|
||||
*
|
||||
* @(#)nfs_vfsops.c 8.12 (Berkeley) 5/20/95
|
||||
* $Id: nfs_vfsops.c,v 1.56 1998/03/14 03:25:18 tegge Exp $
|
||||
* $Id: nfs_vfsops.c,v 1.57 1998/03/30 09:54:23 phk Exp $
|
||||
*/
|
||||
|
||||
#include <sys/param.h>
|
||||
@ -124,7 +124,6 @@ static struct vfsops nfs_vfsops = {
|
||||
nfs_statfs,
|
||||
nfs_sync,
|
||||
nfs_vget,
|
||||
vfs_vrele,
|
||||
nfs_fhtovp,
|
||||
nfs_vptofh,
|
||||
nfs_init
|
||||
|
@ -31,7 +31,7 @@
|
||||
* SUCH DAMAGE.
|
||||
*
|
||||
* @(#)mount.h 8.21 (Berkeley) 5/20/95
|
||||
* $Id: mount.h,v 1.60 1998/03/28 12:13:01 bde Exp $
|
||||
* $Id: mount.h,v 1.61 1998/04/08 18:31:59 wosch Exp $
|
||||
*/
|
||||
|
||||
#ifndef _SYS_MOUNT_H_
|
||||
@ -352,7 +352,6 @@ struct vfsops {
|
||||
struct ucred *cred, struct proc *p));
|
||||
int (*vfs_vget) __P((struct mount *mp, ino_t ino,
|
||||
struct vnode **vpp));
|
||||
int (*vfs_vrele) __P((struct mount *mp, struct vnode *vp));
|
||||
int (*vfs_fhtovp) __P((struct mount *mp, struct fid *fhp,
|
||||
struct sockaddr *nam, struct vnode **vpp,
|
||||
int *exflagsp, struct ucred **credanonp));
|
||||
@ -369,7 +368,6 @@ struct vfsops {
|
||||
#define VFS_STATFS(MP, SBP, P) (*(MP)->mnt_op->vfs_statfs)(MP, SBP, P)
|
||||
#define VFS_SYNC(MP, WAIT, C, P) (*(MP)->mnt_op->vfs_sync)(MP, WAIT, C, P)
|
||||
#define VFS_VGET(MP, INO, VPP) (*(MP)->mnt_op->vfs_vget)(MP, INO, VPP)
|
||||
#define VFS_VRELE(MP, VP) (*(MP)->mnt_op->vfs_vrele)(MP, VP)
|
||||
#define VFS_FHTOVP(MP, FIDP, NAM, VPP, EXFLG, CRED) \
|
||||
(*(MP)->mnt_op->vfs_fhtovp)(MP, FIDP, NAM, VPP, EXFLG, CRED)
|
||||
#define VFS_VPTOFH(VP, FIDP) (*(VP)->v_mount->mnt_op->vfs_vptofh)(VP, FIDP)
|
||||
@ -447,7 +445,6 @@ void vfs_unlock __P((struct mount *)); /* unlock a vfs */
|
||||
int vfs_busy __P((struct mount *, int, struct simplelock *, struct proc *));
|
||||
int vfs_export /* process mount export info */
|
||||
__P((struct mount *, struct netexport *, struct export_args *));
|
||||
int vfs_vrele __P((struct mount *, struct vnode *));
|
||||
struct netcred *vfs_export_lookup /* lookup host in fs export list */
|
||||
__P((struct mount *, struct netexport *, struct sockaddr *));
|
||||
int vfs_allocate_syncvnode __P((struct mount *));
|
||||
|
@ -31,7 +31,7 @@
|
||||
* SUCH DAMAGE.
|
||||
*
|
||||
* @(#)ffs_vfsops.c 8.31 (Berkeley) 5/20/95
|
||||
* $Id: ffs_vfsops.c,v 1.79 1998/04/19 23:32:49 julian Exp $
|
||||
* $Id: ffs_vfsops.c,v 1.80 1998/04/20 03:57:41 julian Exp $
|
||||
*/
|
||||
|
||||
#include "opt_devfs.h" /* for SLICE */
|
||||
@ -84,7 +84,6 @@ static struct vfsops ufs_vfsops = {
|
||||
ffs_statfs,
|
||||
ffs_sync,
|
||||
ffs_vget,
|
||||
vfs_vrele,
|
||||
ffs_fhtovp,
|
||||
ffs_vptofh,
|
||||
ffs_init,
|
||||
|
@ -31,7 +31,7 @@
|
||||
* SUCH DAMAGE.
|
||||
*
|
||||
* @(#)mfs_vfsops.c 8.11 (Berkeley) 6/19/95
|
||||
* $Id: mfs_vfsops.c,v 1.40 1998/02/09 06:11:08 eivind Exp $
|
||||
* $Id: mfs_vfsops.c,v 1.41 1998/03/01 22:46:53 msmith Exp $
|
||||
*/
|
||||
|
||||
#include "opt_mfs.h"
|
||||
@ -95,7 +95,6 @@ static struct vfsops mfs_vfsops = {
|
||||
mfs_statfs,
|
||||
ffs_sync,
|
||||
ffs_vget,
|
||||
vfs_vrele,
|
||||
ffs_fhtovp,
|
||||
ffs_vptofh,
|
||||
mfs_init,
|
||||
|
Loading…
Reference in New Issue
Block a user