Training courses

Kernel and Embedded Linux

Bootlin training courses

Embedded Linux, kernel,
Yocto Project, Buildroot, real-time,
graphics, boot time, debugging...

Bootlin logo

Elixir Cross Referencer

;       $NetBSD: rumpvfs.ifspec,v 1.12 2020/02/23 15:46:42 ad Exp $

NAME|vfs
PUBHDR|include/rump/rumpvfs_if_pub.h
PRIVHDR|include/rump-sys/vfs_if.h
WRAPPERS|librump/rumpvfs/rumpvfs_if_wrappers.c

; type          | name          | args		| attrs
;

void		|getvninfo	|struct vnode *, enum rump_vtype *,	\
				 off_t *, dev_t *

struct vfsops *	|vfslist_iterate|struct vfsops *
struct vfsops *	|vfs_getopsbyname|const char *

struct vattr *	|vattr_init	|void
void		|vattr_settype	|struct vattr *, enum rump_vtype
void		|vattr_setmode	|struct vattr *, mode_t
void		|vattr_setrdev	|struct vattr *, dev_t
void		|vattr_free	|struct vattr *

void		|vp_incref	|struct vnode *
int		|vp_getref	|struct vnode *
void		|vp_rele	|struct vnode *

void		|vp_interlock	|struct vnode *
void		|vp_vmobjlock	|struct vnode *, int

void		|freecn		|struct componentname *, int
int		|namei		|uint32_t, uint32_t, const char *,	\
				 struct vnode **, struct vnode **,	\
				 struct componentname **
struct componentname *|makecn	|u_long, u_long, const char *, size_t,	\
				 struct kauth_cred *, struct lwp *

int		|vfs_unmount	|struct mount *, int
int		|vfs_root	|struct mount *, struct vnode **, int
int		|vfs_statvfs	|struct mount *, struct statvfs *
int		|vfs_sync	|struct mount *, int, struct kauth_cred *
int		|vfs_fhtovp	|struct mount *, struct fid *, struct vnode **
int		|vfs_vptofh	|struct vnode *, struct fid *, size_t *
int		|vfs_extattrctl	|struct mount *, int, struct vnode *,	\
				 int, const char *
void		|vfs_syncwait	|struct mount *
int		|vfs_getmp	|const char *, struct mount **

void		|vfs_mount_print|const char *, int

; I picked the wrong header to stop sniffin' glue
int		|syspuffs_glueinit	|int, int *	|WEAK

; Other compat glue (for sniffing purposes)
; XXX: (lack of) types
void		|vattr50_to_vattr|const struct vattr *, struct vattr *|COMPAT_50
void		|vattr_to_vattr50|const struct vattr *, struct vattr *|COMPAT_50