modload.2 (2010 09)

m
modload(2) modload(2)
NAME
modload - load kernel modules on demand
SYNOPSIS
#include <sys/mod.h>
int modload(char *pathname );
DESCRIPTION
modload allows processes with appropriate privilege to demand-load a kernel module into the running
kernel. The module must be of a supported type and must have been registered via kcmodule(1M) before
it can be loaded.
The module to be loaded is specified by pathname . pathname may be either a module name or an abso-
lute path name. If pathname is a module name, a list of directories specified by modpath is searched for
a match. If pathname is absolute, only pathname is used to access the object file. The file must be an
ELF64 relocatable object file.
Notes
modload is currently implemented as a macro.
Security Restrictions
modload is restricted to superuser processes and privileged processes. A privileged process requires the
PRIV_DLKM privilege to execute the modload system call.
See privileges (5), for more information about the
DLKM_PRIV privilege.
RETURN VALUE
On successful completion,
modload returns a module identifier that can be passed to moduload or
modstat. On failure it returns -1 and sets errno to identify the error.
ERRORS
modload fails if one or more of the following are true:
[EACCES] A component of pathname denies search permission.
[ENOENT] The file named by pathname does not exist.
[ENOREG] The module being loaded is not currently registered.
[EINVAL] The file named by pathname is not appropriately pre-configured or has invalid
dependency on other modules.
[EPERM] The caller is not a superuser process or a privileged process.
[ERELOC] A relocation error occurred during the attempt to load the module, or the
module references symbols not defined in the running kernel, or the module
references symbols in another loadable module but it did not declare its
dependence on this module in its module metadata.
[ENAMETOOLONG]
pathname is more than
MAXPATHLEN characters long.
[EBADVER] The module wrapper has an incorrect version number.
[ENOSYS] The Dynamically Loadable Kernel Module feature is not initialized.
SEE ALSO
kcmodule(1M), modstat(2), moduload(2), privileges(5).
HP-UX 11i Version 3: September 2010 1 Hewlett-Packard Company 1

Summary of content (2 pages)