VFS_HOOKS(9) | Kernel Developer's Manual | VFS_HOOKS(9) |
Hooks are described by a struct vfs_hooks object, as seen below:
struct vfs_hooks { int (*vh_unmount)(struct mount *); };
For simplicity, each field is named after the VFS operation it refers to. The purpose of each member function, alongside some important notes, is shown below:
For more information about the purpose of each operation, see vfsops(9). Note that any of these fields may be a null pointer.
After the definition of a struct vfs_hooks object, the kernel has to add it to the vfs_hooks link set using the VFS_HOOKS_ATTACH(struct vfs_hooks *) macro.
Please note that this interface is incomplete on purpose to keep it in its smallest possible size (i.e., do not provide a hook that is not used). If you feel the need to hook a routine to a VFS operation that is not yet supported by this interface, just add it to the files described in CODE REFERENCES.
September 23, 2005 | NetBSD 6.1 |