kldunload,
kldunloadf —
unload kld files
Standard C Library (libc, -lc)
#include
<sys/linker.h>
int
kldunload(int
fileid);
int
kldunloadf(int
fileid, int
flags);
The
kldunload()
system call unloads a kld file from the kernel that was previously linked
via
kldload(2).
The
kldunloadf()
system call accepts an additional flags argument, which may be one of
LINKER_UNLOAD_NORMAL, giving the same behavior as
kldunload(), or
LINKER_UNLOAD_FORCE, which causes the unload to
ignore a failure to quiesce the module.
Upon successful completion, the value 0 is returned;
otherwise the value -1 is returned and the global variable
errno is set to indicate the error.
The file referred to by fileid is unloaded
unless:
- [
EPERM]
- You do not have access to unlink the file from the kernel.
- [
ENOENT]
- The file was not found.
- [
EBUSY]
- You attempted to unload a file linked by the kernel.
- [
EINVAL]
- The
kldunloadf() system call was passed invalid
flags.
kldfind(2),
kldfirstmod(2),
kldload(2),
kldnext(2),
kldstat(2),
kldsym(2),
modfind(2),
modfnext(2),
modnext(2),
modstat(2),
kld(4),
kldunload(8)
The kld interface first appeared in
FreeBSD 3.0.