Module Name: src
Committed By: pgoyette
Date: Wed Dec 2 00:56:09 UTC 2015
Modified Files:
src/sbin/modstat: main.c modstat.8
Log Message:
By default, don't display the module load address. Add a -k option
to restore display of this field.
To generate a diff of this commit:
cvs rdiff -u -r1.20 -r1.21 src/sbin/modstat/main.c
cvs rdiff -u -r1.18 -r1.19 src/sbin/modstat/modstat.8
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
Modified files:
Index: src/sbin/modstat/main.c
diff -u src/sbin/modstat/main.c:1.20 src/sbin/modstat/main.c:1.21
--- src/sbin/modstat/main.c:1.20 Wed Nov 4 16:04:55 2015
+++ src/sbin/modstat/main.c Wed Dec 2 00:56:09 2015
@@ -1,4 +1,4 @@
-/* $NetBSD: main.c,v 1.20 2015/11/04 16:04:55 christos Exp $ */
+/* $NetBSD: main.c,v 1.21 2015/12/02 00:56:09 pgoyette Exp $ */
/*-
* Copyright (c) 2008 The NetBSD Foundation, Inc.
@@ -28,7 +28,7 @@
#include <sys/cdefs.h>
#ifndef lint
-__RCSID("$NetBSD: main.c,v 1.20 2015/11/04 16:04:55 christos Exp $");
+__RCSID("$NetBSD: main.c,v 1.21 2015/12/02 00:56:09 pgoyette Exp $");
#endif /* !lint */
#include <sys/module.h>
@@ -41,6 +41,7 @@ __RCSID("$NetBSD: main.c,v 1.20 2015/11/
#include <stdlib.h>
#include <string.h>
#include <unistd.h>
+#include <stdbool.h>
#include "prog_ops.h"
@@ -80,16 +81,20 @@ main(int argc, char **argv)
int ch, rc, modauto = 1;
size_t maxnamelen = 16, i, modautolen;
char loadable = '\0';
+ bool address = false;
name = NULL;
- while ((ch = getopt(argc, argv, "Aaen:")) != -1) {
+ while ((ch = getopt(argc, argv, "Aaekn:")) != -1) {
switch (ch) {
case 'A': /* FALLTHROUGH */
case 'a': /* FALLTHROUGH */
case 'e':
loadable = (char)ch;
break;
+ case 'k':
+ address = true;
+ break;
case 'n':
name = optarg;
break;
@@ -179,9 +184,11 @@ main(int argc, char **argv)
if (maxnamelen < namelen)
maxnamelen = namelen;
}
- printf("%-*s %-8s %-8s %-4s %-5s %-16s %-7s %s \n",
- (int)maxnamelen, "NAME", "CLASS", "SOURCE", "FLAG", "REFS",
- "ADDRESS", "SIZE", "REQUIRES");
+ printf("%-*s %-8s %-8s %-4s %-5s ",
+ (int)maxnamelen, "NAME", "CLASS", "SOURCE", "FLAG", "REFS");
+ if (address)
+ printf("%-16s ", "ADDRESS");
+ printf("%-7s %s \n", "SIZE", "REQUIRES");
for (ms = iov.iov_base; len != 0; ms++, len--) {
const char *class;
const char *source;
@@ -208,10 +215,13 @@ main(int argc, char **argv)
else
source = "UNKNOWN";
- printf("%-*s %-8s %-8s %-4s %-5d %-16" PRIx64 " %-7s %s\n",
+ printf("%-*s %-8s %-8s %-4s %-5d ",
(int)maxnamelen, ms->ms_name, class, source,
modflags[ms->ms_flags & (__arraycount(modflags) - 1)],
- ms->ms_refcnt, ms->ms_addr, sbuf, ms->ms_required);
+ ms->ms_refcnt);
+ if (address)
+ printf("%-16" PRIx64 " ", ms->ms_addr);
+ printf("%-7s %s\n", sbuf, ms->ms_required);
}
exit(EXIT_SUCCESS);
Index: src/sbin/modstat/modstat.8
diff -u src/sbin/modstat/modstat.8:1.18 src/sbin/modstat/modstat.8:1.19
--- src/sbin/modstat/modstat.8:1.18 Sun Nov 29 21:36:35 2015
+++ src/sbin/modstat/modstat.8 Wed Dec 2 00:56:09 2015
@@ -1,4 +1,4 @@
-.\" $NetBSD: modstat.8,v 1.18 2015/11/29 21:36:35 wiz Exp $
+.\" $NetBSD: modstat.8,v 1.19 2015/12/02 00:56:09 pgoyette Exp $
.\"
.\" Copyright (c) 1993 Christopher G. Demetriou
.\" All rights reserved.
@@ -32,7 +32,7 @@
.\"
.\" <<Id: LICENSE,v 1.2 2000/06/14 15:57:33 cgd Exp>>
.\"
-.Dd November 4, 2015
+.Dd December 2, 2015
.Dt MODSTAT 8
.Os
.Sh NAME
@@ -63,6 +63,8 @@ take into consideration the sysctl
.Li kern.module.autoload .
.It Fl e
Tells you whether or not you may load a module at the moment.
+.It Fl k
+Display the module's kernel address (disabled by default).
.It Fl n Ar name
Display the status of only the module with this name.
Please note that
@@ -107,6 +109,9 @@ Disabled builtin modules will show a cou
.It Li ADDRESS
The kernel address at which the module is loaded.
Builtin modules will show 0 here.
+This field is only displayed if the
+.Fl k
+option is specified.
.It Li REQUIRES
Additional modules that must be present.
.El