lkml.org 
[lkml]   [2008]   [Aug]   [5]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
Patch in this message
/
Date
From
Subject[PATCH 2.6.27-rc1-git5 24/26] mdb: add module.c fixes interative module search
Centralized external definitions into include files and corrected 
the file to conform to Linux coding practices. fixed word wrap
problems with patches.

add an iterative search for module names while the debugger is active.

Signed-off-by: Jeffrey Vernon Merkey (jmerkey@wolfmountaingroup.com)

--- a/kernel/module.c 2008-08-04 15:53:44.000000000 -0600
+++ b/kernel/module.c 2008-08-04 15:49:51.000000000 -0600
@@ -2503,6 +2503,38 @@
return 0;
}

+#ifdef CONFIG_MDB
+int mdb_modules(char *str, int (*print)(char *s, ...))
+{
+ struct module *mod;
+ struct module_use *use;
+
+ if (!print)
+ return 0;
+
+ list_for_each_entry(mod, &modules, list)
+ {
+ if (str && *str && !strstr(mod->name, str))
+ continue;
+
+ print(" 0x%08p ", mod->module_core);
+ print("%s", mod->name);
+ print(" %lu %02u ", mod->init_size + mod->core_size,
+ module_refcount(mod));
+ list_for_each_entry(use, &mod->modules_which_use_me, list)
+ print("%s,", use->module_which_uses->name);
+ if (mod->init != NULL && mod->exit == NULL)
+ print("[permanent],");
+ print(" %s ", mod->state == MODULE_STATE_GOING ? "Unloading":
+ mod->state == MODULE_STATE_COMING ? "Loading":
+ "Live");
+ if (print("\n"))
+ return 1;
+ }
+ return 0;
+}
+#endif
+
/* Look for this name: can be of form module:name. */
unsigned long module_kallsyms_lookup_name(const char *name)
{

\
 
 \ /
  Last update: 2008-08-05 09:13    [W:2.408 / U:1.208 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site