From: danielfsantos@att.net
To: linux-kbuild <linux-kbuild@vger.kernel.org>,
LKML <linux-kernel@vger.kernel.org>,
Michal Marek <mmarek@suse.cz>,
Andrew Morton <akpm@linux-foundation.org>,
"Paul E. McKenney" <paulmck@linux.vnet.ibm.com>,
David Howells <dhowells@redhat.com>,
Thomas Gleixner <tglx@linutronix.de>,
Michael Kerrisk <mtk.manpages@gmail.com>,
Dave Hansen <dave.hansen@linux.intel.com>,
George Spelvin <linux@horizon.com>
Subject: [PATCH 0/5] Preliminary: Add error names & descrptions to printks
Date: Tue, 17 Sep 2013 18:08:32 -0500 [thread overview]
Message-ID: <1379459317-13046-1-git-send-email-daniel.santos@pobox.com> (raw)
This is a preliminary patch set as the root Makefile changes are not yet
correct.
Summary
Typically, we don't care about error messages or names in the kernel because
userspace will manage that. But sometimes we need to output an error number
to printks and that creates a situation where a user, system admistrator or
developer must find an error number reference to figure out what went wrong
with a particular driver or whatever. This patch adds two alternatives at
increasing memory costs:
1. print the number in addition to the name for 2k extra or
2. print the number, name and description for 6k extra.
This is fairly low cost for the person who wants to make life just a little
bit easier. The format of each is respectively the same as the following:
printk("%d (%s)", err, err_name);
printk("%d (%s: %s)", err, err_name, err_desc);
Theory
Error messages aren't printed often, so this data and code is designed to be
compact at the expense of speed. Rather than using an array of strings that
would require both the text and a pointer to that text, we just cram a range
of error names or descriptions into a single string with null character
delimiters. When we want to retrieve a string, we just iterate through that
string and count nulls. This is slow, but it keeps it compact. (If this
becomes a bottleneck then something else is seriously wrong! :)
next reply other threads:[~2013-09-17 23:08 UTC|newest]
Thread overview: 24+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-09-17 23:08 danielfsantos [this message]
2013-09-17 23:08 ` [PATCH 1/5] scripts: Add mkstrerror.sh danielfsantos
2013-09-17 23:08 ` [PATCH 2/5] lib: Add .config options for error strings in printks danielfsantos
2013-09-17 23:18 ` Daniel Santos
2013-09-17 23:08 ` [PATCH 3/5] Makefile: Generate error_strings.h danielfsantos
2013-09-17 23:08 ` [PATCH 4/5] lib: Add strerror and strerror_name functions danielfsantos
2013-09-17 23:08 ` [PATCH 5/5] lib: Add error string support to printks danielfsantos
2013-09-18 5:36 ` Joe Perches
2013-09-18 11:04 ` David Howells
2013-09-19 1:27 ` Daniel Santos
2013-09-20 1:07 ` Joe Perches
2013-09-20 5:21 ` Daniel Santos
2013-09-20 11:45 ` Joe Perches
2013-09-23 19:40 ` Daniel Santos
2013-09-20 13:07 ` David Howells
2013-09-23 20:17 ` Daniel Santos
2013-09-18 11:08 ` [PATCH 0/5] Preliminary: Add error names & descrptions " David Howells
2013-09-18 22:47 ` Daniel Santos
2013-09-18 11:38 ` [PATCH 1/5] scripts: Add mkstrerror.sh David Howells
2013-09-18 22:43 ` Daniel Santos
2013-09-19 22:35 ` Daniel Santos
2013-09-19 22:53 ` Daniel Santos
2013-09-18 11:55 ` David Howells
2013-09-18 22:27 ` Daniel Santos
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1379459317-13046-1-git-send-email-daniel.santos@pobox.com \
--to=danielfsantos@att.net \
--cc=akpm@linux-foundation.org \
--cc=dave.hansen@linux.intel.com \
--cc=dhowells@redhat.com \
--cc=linux-kbuild@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux@horizon.com \
--cc=mmarek@suse.cz \
--cc=mtk.manpages@gmail.com \
--cc=paulmck@linux.vnet.ibm.com \
--cc=tglx@linutronix.de \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®