[<prev] [next>] [day] [month] [year] [list]
Message-Id: <200808050626.m756Qb6H003784@wolfmountaingroup.com>
Date: Tue, 5 Aug 2008 00:26:37 -0600
From: jmerkey@...fmountaingroup.com
To: linux-kernel@...r.kernel.org
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@...fmountaingroup.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)
{
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists