On Thu, 2009-09-10 at 09:21 -0400, Jon Masters wrote: > On Thu, 2009-09-10 at 14:19 +0200, Kay Sievers wrote: > > On Thu, Sep 10, 2009 at 14:11, Michal Marek <mmarek@xxxxxxx> wrote: > > > Andreas Robinson napsal(a): > > > > My current /lib/modules/`uname -r`/modules.builtin is 129 lines, I'm not > > > sure I want to see additional 129 lines each time I run lsmod. What > > > about some 'lsmod --show-builtin' ? > > > > Oh well, before we moved all to built-in in the kernel the list was > > that long as well. I think "grep is your friend" and we should not > > care and just print it. The less difference between built-in and > > module the better. > > I concur. I think you can grep or pass through a pager easy enough. > > Jon. > > A compromise? List the builtins first? >From bf7242f46c54f2db32fded00af098ec6d872d7d0 Mon Sep 17 00:00:00 2001 From: Andreas Robinson <andr345@xxxxxxxxx> Date: Thu, 10 Sep 2009 15:13:20 +0200 Subject: [PATCH] lsmod: print built-in modules Signed-off-by: Andreas Robinson <andr345@xxxxxxxxx> --- lsmod.c | 25 ++++++++++++++++++++++++- 1 files changed, 24 insertions(+), 1 deletions(-) diff --git a/lsmod.c b/lsmod.c index 1fd2ec4..80401b4 100644 --- a/lsmod.c +++ b/lsmod.c @@ -26,6 +26,8 @@ #include <errno.h> #include <ctype.h> #include <asm/unistd.h> +#include <limits.h> +#include <sys/utsname.h> #include "testing.h" @@ -37,19 +39,40 @@ static void print_usage(const char *progname) int main(int argc, char *argv[]) { + char fname[PATH_MAX]; char line[4096]; FILE *file; + struct utsname buf; if (argc != 1) print_usage("lsmod"); + printf("Module Size Used by\n"); + + uname(&buf); + snprintf(fname, sizeof(fname), "/lib/modules/%s/modules.builtin", + buf.release); + file = fopen(fname, "r"); + while (file && fgets(line, sizeof(line), file)) { + char *modname, *ext; + + modname = strrchr(line, '/'); + if (modname) { + ext = strrchr(modname, '.'); + if (ext) + *ext = '\0'; + printf("%-19s - - [builtin]\n", modname+1); + } + } + if (file) + fclose(file); + file = fopen("/proc/modules", "r"); if (!file) { perror("Opening /proc/modules"); exit(1); } - printf("Module Size Used by\n"); while (fgets(line, sizeof(line), file)) { char *tok; -- 1.6.0.4 -- To unsubscribe from this list: send the line "unsubscribe linux-modules" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html