Messages in this thread Patch in this message | | | From | Laura Abbott <> | Subject | [RFC][PATCH] module: Limit line length of module prints | Date | Thu, 10 Dec 2015 17:50:32 -0800 |
| |
print_modules currently uses pr_cont to print all module information. This has the side effect of printing lots of modules on one very long line. This makes copy/pasting oopses more effort if manual wrapping is required. Place a reasonable limit (80 chars) on the number of modules on each line.
Signed-off-by: Laura Abbott <labbott@fedoraproject.org> --- Does this bother anyone else or am I the only one who hates dealing with the long lines of "Modules linked in"? --- kernel/module.c | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-)
diff --git a/kernel/module.c b/kernel/module.c index 8f051a1..ace82f1 100644 --- a/kernel/module.c +++ b/kernel/module.c @@ -4059,11 +4059,14 @@ struct module *__module_text_address(unsigned long addr) } EXPORT_SYMBOL_GPL(__module_text_address); +#define MAX_LINE_CHARS 80 + /* Don't grab lock, we're oopsing. */ void print_modules(void) { struct module *mod; char buf[8]; + int cnt = 0; printk(KERN_DEFAULT "Modules linked in:"); /* Most callers should already have preempt disabled, but make sure */ @@ -4071,7 +4074,13 @@ void print_modules(void) list_for_each_entry_rcu(mod, &modules, list) { if (mod->state == MODULE_STATE_UNFORMED) continue; - pr_cont(" %s%s", mod->name, module_flags(mod, buf)); + + if (cnt > MAX_LINE_CHARS) { + cnt = 0; + pr_cont("\n"); + } + + cnt += pr_cont(" %s%s", mod->name, module_flags(mod, buf)); } preempt_enable(); if (last_unloaded_module[0]) -- 2.5.0
| |