NAME

VFS_SETset up loadable file system vfsconf

SYNOPSIS

#include <sys/param.h>
#include <sys/kernel.h>
#include <sys/module.h>
#include <sys/mount.h>
void
VFS_SET(struct vfsops *vfsops, fsname, int flags);

DESCRIPTION

VFS_SET() creates a vfsconf structure for the loadable module with the given vfsops, fsname and flags, and declares it by calling DECLARE_MODULE(9) using vfs_modevent() as the event handler.
Possible values for the flags argument are:
VFCF_STATIC
File system should be statically available in the kernel.
VFCF_NETWORK
Network exportable file system.
VFCF_READONLY
Does not support write operations.
VFCF_SYNTHETIC
Pseudo file system, data does not represent on-disk files.
VFCF_LOOPBACK
Loopback file system layer.
VFCF_UNICODE
File names are stored as Unicode.
VFCF_JAIL
Can be mounted from within a jail if allow.mount and allow.mount.<fsname> jail parameters are set.
VFCF_DELEGADMIN
Supports delegated administration if vfs.usermount sysctl is set to 1.
VFCF_SBDRY
When in VFS method, the thread suspension is deferred to the user boundary upon arrival of stop action.

PSEUDOCODE

/* 
 * Fill in the fields for which we have special methods. 
 * The others are initially null.  This tells vfs to change them to 
 * pointers to vfs_std* functions during file system registration. 
 */ 
static struct vfsops myfs_vfsops = { 
        .vfs_mount =    myfs_mount, 
        .vfs_root =     myfs_root, 
        .vfs_statfs =   myfs_statfs, 
        .vfs_unmount =  myfs_unmount, 
}; 
 
VFS_SET(myfs_vfsops, myfs, 0);

SEE ALSO

jail(2), jail(8), DECLARE_MODULE(9), vfs_modevent(9), vfsconf(9)

AUTHORS

This manual page was written by Chad David <[email protected]>.

Recommended readings

Pages related to VFS_SET you should read also: