MOUNTROOTHOOK_ESTABLI... BSD Kernel Developer's ManualMOUNTROOTHOOK_ESTABLI...
mountroothook_establish, mountroothook_disestablish -- add or remove a
mountroothook_establish(void (*fn)(void *), void *arg);
The mountroothook_establish() function adds fn to the list of hooks
invoked by domountroothooks(9) at mountroot. When invoked, the hook
function fn will be passed arg as its only argument.
The mountroothook_disestablish() function removes the hook described by
the opaque pointer cookie from the list of hooks to be invoked at mount-
root. If cookie is invalid, the result of mountroothook_disestablish()
Mountroot hooks should be used to perform one-time activities that must
happen immediately after the root filesystem has been mounted by the ker-
nel, but before init(8) has been started.
Mountroot hooks are, like startup hooks, implemented via the more general
If successful, mountroothook_establish() returns an opaque pointer
describing the newly established mountroot hook. Otherwise, it returns
It may be appropriate to use a mountroot hook to split the attach func-
tion of a device driver. Once the root filesystem is mounted, the hook
will be called and it is safe to use loadfirmware(9) to get the firmware
out of the filesystem.
dohooks(9), domountroothooks(9), dostartuphooks(9)
The names are clumsy, at best.
BSD June 4, 2013 BSD