NAME
kkeexxttuunnllooaadd - terminates and unloads kernel extensions
SYNOPSIS
kkeexxttuunnllooaadd [-bb bundleid] ... [-cc classname] ... [-hh] [-pp] [ -vv [0-6]
| -qq ] [ extension ] ...
DESCRIPTION
The kkeexxttuunnllooaadd program is used to terminate and unregister I/O Kit objects associated with a kernel extension (kext) and to unload the code and personalities for that kext. In order to unload a kext, kkeexxttuunnllooaadd must be invoked with superuser privileges. If another loaded kext has a dependency on a kext being unloaded, the unload will fail. You can determine whether a kext has dependents using the kextstat(8) tool. kkeexxttuunnllooaadd is a formal interface for unloading kexts in the Darwin OS and in Mac OS X. Software and installers can rely on its presence and invoke it in order to unload kexts. The arguments and options are: extension The pathname of a kext to unload. All instances of classes associated with the kext are terminated, and personalities and code are unloaded from the kernel.-bb bundleid
Unload code and personalities for the kext whose CFBundleIdenti-
fier is bundleid.-cc classname
Terminate all instances of class classname if possible but do not unload code or personalities. New load requests for devices driven by these instances may result in the same class being instantiated at any time.-hh Print a help message describing each option flag.
-mm bundleid
Same as -bb (remains for backward compatibility).
-pp Don't remove personalities when unloading (unnecessary when
using the -cc option). New load requests for devices driven by
the kext may result in the same kext being loaded at any time.-qq Quiet mode; print no informational or error messages. This
option excludes -vv.
-vv [0-6]
Verbose mode; print information about the kext scanning and loading process (note that this is generally not useful when unloading). See the man page for kextload(8) to see what eachverbose level prints. This option excludes -qq.
DIAGNOSTICSkkeexxttuunnllooaadd exits with a zero status upon success, or prints an error mes-
sage and exits with a nonzero status upon failure. An error when multi-
ple kexts are being unloaded causes kkeexxttuunnllooaadd to exit immediately, so that some kexts may remain loaded even if they could have been unloaded without error.BUGS
The kernel's kext unloading facility does not provide detailed failure information. Thus it is impossible to tell whether the problem was that the kext wasn't loaded or that another kext has a dependency on it, etc. These conditions can be checked using kextstat(8).SEE ALSO
kextcache(8), kextd(8), kextload(8), kextstat(8) Darwin April 17, 2002 Darwin