KEXTUNLOAD(8) System Manager's Manual KEXTUNLOAD(8)
NAME
kextunload - terminates objects and unloads code associated with a kernel
extension
SYNOPSIS
kextunload [-b bundle_id] ... [-c class_name] ... [-h] [-p] [-v [1-6]]
[ extension ] ...
DESCRIPTION
The kextunload 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 kextunload
must be invoked as the superuser.
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.
kextunload 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 available are these:
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.
-b bundle_id
Unload code and personalities for the kext whose CFBundleIdenti-
fier is bundle_id.
-c class_name
Terminate all instances of class class_name 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.
-h Print a help message describing each option flag.
-m bundle_id
Same as -m (remains for backward compatibility).
-p Don't remove personalities when unloading (unnecessary when
using the -c option). New load requests for devices driven by
the kext may result in the same kext being loaded at any time.
-v [1-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 each
verbose level prints.
DIAGNOSTICS
kextunload 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 kextunload to exit immediately, so
that some kexts may remain unloaded even if they could have been unloaded
without error.
BUGS
The results of unload requests as given by the kernel don't allow for
determining the reason for a failure, such as that the kext wasn't loaded
or that another kext has a dependency on it. You can check these condi-
tions using kextstat(8).
SEE ALSO
kextd(8), kextload(8), kextstat(8)
Darwin April 17, 2002 Darwin