HP-UX Reference (11i v1 00/12) - 2 System Calls (vol 5)

__________________________________________________________________________________________________________________________________________________________________________________________________
__________________________________________________________________________________________________________________________________________________________________________________________________
STANDARD Printed by: Nora Chuang [nchuang] STANDARD
/build/1111/BRICK/man2/!!!intro.2
________________________________________________________________
___ ___
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 config(1M) or
kmmodreg(1M) before it can be loaded.
The module to be loaded is specified by pathname. pathname may be either a module name or an absolute
pathname. 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 relocat-
able object file.
NOTES
modload is currently implemented as a macro.
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] 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 calling process does not have appropriate privilege.
[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 master(4) file.
[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
config(1M), kmadmin(1M), kmmodreg(1M), modstat(2), moduload(2), master(4).
Section 2156 1 HP-UX Release 11i: December 2000
___
___