Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752104AbbLKBuh (ORCPT ); Thu, 10 Dec 2015 20:50:37 -0500 Received: from mx1.redhat.com ([209.132.183.28]:55479 "EHLO mx1.redhat.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751066AbbLKBuf (ORCPT ); Thu, 10 Dec 2015 20:50:35 -0500 From: Laura Abbott To: Rusty Russell Cc: Laura Abbott , linux-kernel@vger.kernel.org Subject: [RFC][PATCH] module: Limit line length of module prints Date: Thu, 10 Dec 2015 17:50:32 -0800 Message-Id: <1449798632-29248-1-git-send-email-labbott@fedoraproject.org> Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1733 Lines: 56 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 --- 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 -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/