Page MenuHomeFreeBSD

D32502.diff
No OneTemporary

D32502.diff

diff --git a/sbin/kldstat/kldstat.c b/sbin/kldstat/kldstat.c
--- a/sbin/kldstat/kldstat.c
+++ b/sbin/kldstat/kldstat.c
@@ -40,166 +40,171 @@
#include <sys/linker.h>
#include <strings.h>
-#define POINTER_WIDTH ((int)(sizeof(void *) * 2 + 2))
+#define POINTER_WIDTH ((int)(sizeof(void *) * 2 + 2))
static int showdata = 0;
static void
printmod(int modid)
{
- struct module_stat stat;
-
- bzero(&stat, sizeof(stat));
- stat.version = sizeof(struct module_stat);
- if (modstat(modid, &stat) < 0)
- warn("can't stat module id %d", modid);
- else
- if (showdata) {
- printf("\t\t%3d %s (%d, %u, 0x%lx)\n", stat.id, stat.name,
- stat.data.intval, stat.data.uintval, stat.data.ulongval);
- } else {
- printf("\t\t%3d %s\n", stat.id, stat.name);
+ struct module_stat stat;
+
+ bzero(&stat, sizeof(stat));
+ stat.version = sizeof(struct module_stat);
+ if (modstat(modid, &stat) < 0)
+ warn("can't stat module id %d", modid);
+ else {
+ if (showdata)
+ printf("\t\t%3d %s (%d, %u, 0x%lx)\n", stat.id,
+ stat.name, stat.data.intval, stat.data.uintval,
+ stat.data.ulongval);
+ else
+ printf("\t\t%3d %s\n", stat.id, stat.name);
}
}
static void
printfile(int fileid, int verbose, int humanized)
{
- struct kld_file_stat stat;
- int modid;
- char buf[5];
-
- stat.version = sizeof(struct kld_file_stat);
- if (kldstat(fileid, &stat) < 0) {
- err(1, "can't stat file id %d", fileid);
- } else {
- if (humanized) {
- humanize_number(buf, sizeof(buf), stat.size,
- "", HN_AUTOSCALE, HN_DECIMAL | HN_NOSPACE);
-
- printf("%2d %4d %*p %5s %s",
- stat.id, stat.refs, POINTER_WIDTH, stat.address, buf,
- stat.name);
+ struct kld_file_stat stat;
+ int modid;
+ char buf[5];
+
+ stat.version = sizeof(struct kld_file_stat);
+ if (kldstat(fileid, &stat) < 0) {
+ err(1, "can't stat file id %d", fileid);
} else {
- printf("%2d %4d %*p %8zx %s",
- stat.id, stat.refs, POINTER_WIDTH, stat.address, stat.size,
- stat.name);
+ if (humanized) {
+ humanize_number(buf, sizeof(buf), stat.size,
+ "", HN_AUTOSCALE, HN_DECIMAL | HN_NOSPACE);
+
+ printf("%2d %4d %*p %5s %s",
+ stat.id, stat.refs, POINTER_WIDTH, stat.address,
+ buf, stat.name);
+ } else {
+ printf("%2d %4d %*p %8zx %s",
+ stat.id, stat.refs, POINTER_WIDTH, stat.address,
+ stat.size, stat.name);
+ }
}
- }
-
- if (verbose) {
- printf(" (%s)\n", stat.pathname);
- printf("\tContains modules:\n");
- printf("\t\t Id Name\n");
- for (modid = kldfirstmod(fileid); modid > 0;
- modid = modfnext(modid))
- printmod(modid);
- } else
- printf("\n");
+
+ if (verbose) {
+ printf(" (%s)\n", stat.pathname);
+ printf("\tContains modules:\n");
+ printf("\t\t Id Name\n");
+ for (modid = kldfirstmod(fileid); modid > 0; modid = modfnext(modid))
+ printmod(modid);
+ } else
+ printf("\n");
}
static void
usage(void)
{
- fprintf(stderr, "usage: kldstat [-d] [-h] [-q] [-v] [-i id] [-n filename]\n");
- fprintf(stderr, " kldstat [-d] [-q] [-m modname]\n");
- exit(1);
+ fprintf(stderr, "usage: kldstat [-d] [-h] [-q] [-v] [-i id] [-n filename]\n");
+ fprintf(stderr, " kldstat [-d] [-q] [-m modname]\n");
+ exit(1);
}
int
main(int argc, char** argv)
{
- int c;
- int humanized = 0;
- int verbose = 0;
- int fileid = 0;
- int quiet = 0;
- char* filename = NULL;
- char* modname = NULL;
- char* p;
-
- while ((c = getopt(argc, argv, "dhi:m:n:qv")) != -1)
- switch (c) {
- case 'd':
- showdata = 1;
- break;
- case 'h':
- humanized = 1;
- break;
- case 'i':
- fileid = (int)strtoul(optarg, &p, 10);
- if (*p != '\0')
+ int c;
+ int humanized = 0;
+ int verbose = 0;
+ int fileid = 0;
+ int quiet = 0;
+ char* filename = NULL;
+ char* modname = NULL;
+ char* p;
+
+ while ((c = getopt(argc, argv, "dhi:m:n:qv")) != -1)
+ switch (c) {
+ case 'd':
+ showdata = 1;
+ break;
+ case 'h':
+ humanized = 1;
+ break;
+ case 'i':
+ fileid = (int)strtoul(optarg, &p, 10);
+ if (*p != '\0')
+ usage();
+ break;
+ case 'm':
+ modname = optarg;
+ break;
+ case 'n':
+ filename = optarg;
+ break;
+ case 'q':
+ quiet = 1;
+ break;
+ case 'v':
+ verbose = 1;
+ break;
+ default:
+ usage();
+ }
+ argc -= optind;
+ argv += optind;
+
+ if (argc != 0)
usage();
- break;
- case 'm':
- modname = optarg;
- break;
- case 'n':
- filename = optarg;
- break;
- case 'q':
- quiet = 1;
- break;
- case 'v':
- verbose = 1;
- break;
- default:
- usage();
- }
- argc -= optind;
- argv += optind;
- if (argc != 0)
- usage();
+ if (modname != NULL) {
+ int modid;
+ struct module_stat stat;
- if (modname != NULL) {
- int modid;
- struct module_stat stat;
+ if ((modid = modfind(modname)) < 0) {
+ if (!quiet)
+ warn("can't find module %s", modname);
+ return 1;
+ } else if (quiet) {
+ return 0;
+ }
+
+ stat.version = sizeof(struct module_stat);
+ if (modstat(modid, &stat) < 0)
+ warn("can't stat module id %d", modid);
+ else {
+ if (showdata) {
+ printf("Id Refs Name data..(int, uint, ulong)\n");
+ printf("%3d %4d %s (%d, %u, 0x%lx)\n",
+ stat.id, stat.refs, stat.name,
+ stat.data.intval, stat.data.uintval,
+ stat.data.ulongval);
+ } else {
+ printf("Id Refs Name\n");
+ printf("%3d %4d %s\n", stat.id, stat.refs,
+ stat.name);
+ }
+ }
- if ((modid = modfind(modname)) < 0) {
- if (!quiet)
- warn("can't find module %s", modname);
- return 1;
- } else if (quiet) {
- return 0;
+ return 0;
}
- stat.version = sizeof(struct module_stat);
- if (modstat(modid, &stat) < 0)
- warn("can't stat module id %d", modid);
- else {
- if (showdata) {
- printf("Id Refs Name data..(int, uint, ulong)\n");
- printf("%3d %4d %s (%d, %u, 0x%lx)\n", stat.id, stat.refs, stat.name,
- stat.data.intval, stat.data.uintval, stat.data.ulongval);
- } else {
- printf("Id Refs Name\n");
- printf("%3d %4d %s\n", stat.id, stat.refs, stat.name);
+ if (filename != NULL) {
+ if ((fileid = kldfind(filename)) < 0) {
+ if (!quiet)
+ warn("can't find file %s", filename);
+ return 1;
+ } else if (quiet) {
+ return 0;
}
}
+ if (humanized)
+ printf("Id Refs Address%*c %5s Name\n", POINTER_WIDTH - 7,
+ ' ', "Size");
+ else
+ printf("Id Refs Address%*c %8s Name\n", POINTER_WIDTH - 7,
+ ' ', "Size");
+ if (fileid != 0)
+ printfile(fileid, verbose, humanized);
+ else
+ for (fileid = kldnext(0); fileid > 0; fileid = kldnext(fileid))
+ printfile(fileid, verbose, humanized);
+
return 0;
- }
-
- if (filename != NULL) {
- if ((fileid = kldfind(filename)) < 0) {
- if (!quiet)
- warn("can't find file %s", filename);
- return 1;
- } else if (quiet) {
- return 0;
- }
- }
-
- if (humanized)
- printf("Id Refs Address%*c %5s Name\n", POINTER_WIDTH - 7, ' ', "Size");
- else
- printf("Id Refs Address%*c %8s Name\n", POINTER_WIDTH - 7, ' ', "Size");
- if (fileid != 0)
- printfile(fileid, verbose, humanized);
- else
- for (fileid = kldnext(0); fileid > 0; fileid = kldnext(fileid))
- printfile(fileid, verbose, humanized);
-
- return 0;
}

File Metadata

Mime Type
text/plain
Expires
Mon, Jan 27, 10:02 PM (8 h, 32 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
16215914
Default Alt Text
D32502.diff (7 KB)

Event Timeline