summaryrefslogtreecommitdiff
path: root/lib/libc/sys
diff options
context:
space:
mode:
authorpgoyette <pgoyette@NetBSD.org>2019-01-27 02:08:33 +0000
committerpgoyette <pgoyette@NetBSD.org>2019-01-27 02:08:33 +0000
commitcc17ee2ece085d7d746bcd8fa9be19170855aaac (patch)
tree5be40613f405cb081b2c44410b1506781927f8e3 /lib/libc/sys
parent10dd4cc92542aa04b0e59469a484a48e4c3cdd24 (diff)
Merge the [pgoyette-compat] branch
Diffstat (limited to 'lib/libc/sys')
-rw-r--r--lib/libc/sys/modctl.226
1 files changed, 17 insertions, 9 deletions
diff --git a/lib/libc/sys/modctl.2 b/lib/libc/sys/modctl.2
index b40ab8bc622..db9fa2a88fd 100644
--- a/lib/libc/sys/modctl.2
+++ b/lib/libc/sys/modctl.2
@@ -1,4 +1,4 @@
-.\" $NetBSD: modctl.2,v 1.13 2017/07/03 21:32:50 wiz Exp $
+.\" $NetBSD: modctl.2,v 1.14 2019/01/27 02:08:35 pgoyette Exp $
.\"
.\" Copyright (c) 2009 The NetBSD Foundation, Inc.
.\" All rights reserved.
@@ -74,9 +74,19 @@ In this case, the
argument should be a
.Em struct iovec
pointing to a suitable block of memory.
-The kernel will fill this block with an array of
+The kernel will fill this block with
+.Bl -bullet
+.It
+a count of the number of modules loaded (including aliases),
+.It
+an array of
.Em modstat_t
-structures, one per loaded module.
+structures, one per loaded module, and
+.It
+a series of NUL-terminated strings containing the modules'
+required modules lists.
+.El
+.Pp
If the block is not large enough, the data returned will be truncated
to fit.
The kernel will then update the
@@ -146,9 +156,6 @@ contains the following elements, which are filled in by the kernel:
.Bl -tag -width aaaaaaaa
.It Fa "char ms_name[MAXMODNAME]"
The name of the module.
-.It Fa "char ms_required[MAXMODNAME * MAXMODDEPS]"
-The list of modules required by this module
-as a comma-delimited list of module names.
.It Fa "modsrc_t ms_source"
One of the following enumerated constants:
.Bl -tag -compact -width "MODULE_SOURCE_FILESYS"
@@ -172,14 +179,13 @@ Device driver.
Executable file format.
.It Dv MODULE_CLASS_MISC
Miscellaneous.
-.It Dv MODULE_CLASS_ANY
-Any module class.
-.\" XXX: is MODULE_CLASS_ANY ever returned by this interface?
.El
.It Fa "uint64_t ms_addr"
The load address within the kernel.
+(This value is available only for privileged users.)
.It Fa "u_int ms_size"
Loaded size of the module.
+(This value is available only for privileged users.)
.It Fa "u_int ms_refcnt"
Current number of live references to this module.
.It Fa "u_int ms_flags"
@@ -190,6 +196,8 @@ The "force" flag must be specified to reload this module.
.It Dv MODFLAG_AUTO_LOADED
The module was auto-loaded by the operating system.
.El
+.It Fa "uint_ms_reqoffset"
+The offset (in bytes) from the beginning of the required-module data.
.El
.Sh RETURN VALUES
Upon successful completion, the value returned is 0.