DELETE_MODULE
Section: Linux Programmer's Guide
(2)
Updated: 2004-March-12
Index
Return to Main Contents
NAME
delete_module - Delete a loadable module
SYNOPSIS
-
- long sys_delete_module (const char *name_user, unsigned int flags, const struct timespec *rqtp, struct timespec *rmtp);
DESCRIPTION
delete_module deletes a loadable module. name_user points to the module name that is given by the userspace call to this system call. The flags parameter specifies what actions to take upon module use. There are two values for the flags parameter:
- O_TRUNC
-
If flags is set to this and CONFIG_MODULE_FORCE_UNLOAD is turned on, deletion can take place; otherwise, the function returns EBUSY.
- O_NONBLOCK
-
If the module is in use, CONFIG_MODULE_FORCE_UNLOAD is turned on, the module refcount is non-zero, and O_TRUNC is also defined for the flag, then deletion can take place; otherwise, the function returns EWOULDBLOCK.
RETURN VALUE
delete_module returns 0 on success; otherwise, it returns one of the errors listed in the "Errors" section.
ERRORS
- -EPERM
-
The current user does not have administrator capabilities to modify the modules.
- -EFAULT
-
An invalid user_name value was specified.
- -EINTR
-
A signal interrupt occurred.
- -ENOENT
-
An invalid module name was specified.
- -EWOULDBLOCK
-
Other running modules are dependent on the specified module.
- -EBUSY
-
The module is already being removed or cannot be removed.
SEE ALSO
init_module(2)
AUTHOR
Niki Rahimi