void
vfs_hooks_unmount(
struct mount *mp
)
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:
mp
)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.
mp
)
void
.
sys/kern/vfs_hooks.c
and
sys/sys/mount.h
.