Don't create ddebug_table's for modules with 0 callsites. This saves
memory, and avoids creating ddebug_tables with questionable contents,
which are then iterated over for 'cat control'.
Signed-off-by: Jim Cromie <[email protected]>
---
lib/dynamic_debug.c | 6 ++++++
1 file changed, 6 insertions(+)
diff --git a/lib/dynamic_debug.c b/lib/dynamic_debug.c
index 90bea97c0da1..77c5135879c2 100644
--- a/lib/dynamic_debug.c
+++ b/lib/dynamic_debug.c
@@ -1033,6 +1033,12 @@ int ddebug_add_module(struct _ddebug *tab, struct _ddebug_site *sites,
{
struct ddebug_table *dt;
+ v3pr_info("add-module: %s.%d sites\n", modname, numdbgs);
+ if (!numdbgs) {
+ v3pr_info(" skip %s\n", modname);
+ return 0;
+ }
+
dt = kzalloc(sizeof(*dt), GFP_KERNEL);
if (dt == NULL) {
pr_err("error adding module: %s\n", modname);
--
2.31.1