mirror of https://github.com/mkerrisk/man-pages
59 lines
1.5 KiB
Groff
59 lines
1.5 KiB
Groff
.\" Copyright (C) 1996 Free Software Foundation, Inc.
|
|
.\" This file is distributed according to the GNU General Public License.
|
|
.\" See the file COPYING in the top level source directory for details.
|
|
.\"
|
|
.\" 2006-02-09, some reformatting by Luc Van Oostenryck; some
|
|
.\" reformatting and rewordings by mtk
|
|
.\"
|
|
.TH CREATE_MODULE 2 "2002" Linux "Linux Module Support"
|
|
.SH NAME
|
|
create_module \- create a loadable module entry
|
|
.SH SYNOPSIS
|
|
.nf
|
|
.B #include <linux/module.h>
|
|
.sp
|
|
.BI "caddr_t create_module(const char *" name ", size_t " size );
|
|
.fi
|
|
.SH DESCRIPTION
|
|
.BR create_module ()
|
|
attempts to create a loadable module entry and reserve the kernel memory
|
|
that will be needed to hold the module.
|
|
This system call requires privilege.
|
|
.SH "RETURN VALUE"
|
|
On success, returns the kernel address at which the module will reside.
|
|
On error \-1 is returned and
|
|
.I errno
|
|
is set appropriately.
|
|
.SH ERRORS
|
|
.TP
|
|
.B EEXIST
|
|
A module by that name already exists.
|
|
.TP
|
|
.B EFAULT
|
|
.I name
|
|
is outside the program's accessible address space.
|
|
.TP
|
|
.B EINVAL
|
|
The requested size is too small even for the module header information.
|
|
.TP
|
|
.B ENOMEM
|
|
The kernel could not allocate a contiguous block of memory large
|
|
enough for the module.
|
|
.TP
|
|
.B EPERM
|
|
The caller was not privileged
|
|
(did not have the
|
|
.B CAP_SYS_MODULE
|
|
capability).
|
|
.SH "CONFORMING TO"
|
|
.BR create_module ()
|
|
is Linux specific.
|
|
.SH NOTES
|
|
This system call is only present on Linux up until kernel 2.4;
|
|
it was removed in Linux 2.6.
|
|
.\" Removed in Linux-2.5.48
|
|
.SH "SEE ALSO"
|
|
.BR init_module (2),
|
|
.BR delete_module (2),
|
|
.BR query_module (2)
|