xref: /original-bsd/sys/miscfs/kernfs/kernfs.h (revision 0d869007)
1 /*
2  * Copyright (c) 1992, 1993
3  *	The Regents of the University of California.  All rights reserved.
4  *
5  * This code is derived from software donated to Berkeley by
6  * Jan-Simon Pendry.
7  *
8  * %sccs.include.redist.c%
9  *
10  *	@(#)kernfs.h	8.6 (Berkeley) 03/29/95
11  */
12 
13 #define	_PATH_KERNFS	"/kern"		/* Default mountpoint */
14 
15 #ifdef KERNEL
16 struct kernfs_mount {
17 	struct vnode	*kf_root;	/* Root node */
18 };
19 
20 struct kernfs_node {
21 	struct kern_target *kf_kt;
22 };
23 
24 #define VFSTOKERNFS(mp)	((struct kernfs_mount *)((mp)->mnt_data))
25 #define	VTOKERN(vp) ((struct kernfs_node *)(vp)->v_data)
26 
27 #define kernfs_fhtovp ((int (*) __P((struct mount *, struct fid *, \
28 	    struct mbuf *, struct vnode **, int *, struct ucred **)))eopnotsupp)
29 #define kernfs_quotactl ((int (*) __P((struct mount *, int, uid_t, caddr_t, \
30 	    struct proc *)))eopnotsupp)
31 #define kernfs_sync ((int (*) __P((struct mount *, int, struct ucred *, \
32 	    struct proc *)))nullop)
33 #define kernfs_sysctl ((int (*) __P((int *, u_int, void *, size_t *, void *, \
34 	    size_t, struct proc *)))eopnotsupp)
35 #define kernfs_vget ((int (*) __P((struct mount *, ino_t, struct vnode **))) \
36 	    eopnotsupp)
37 #define kernfs_vptofh ((int (*) __P((struct vnode *, struct fid *)))eopnotsupp)
38 extern int (**kernfs_vnodeop_p)();
39 extern struct vfsops kernfs_vfsops;
40 extern dev_t rrootdev;
41 #endif /* KERNEL */
42