Provided by: freebsd-manpages_12.2-1_all
kldunload, kldunloadf — unload kld files
Standard C Library (libc, -lc)
#include <sys/param.h> #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.