diff options
author | Harvey Harrison <harvey.harrison@gmail.com> | 2008-05-14 19:05:49 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2008-05-14 22:11:14 -0400 |
commit | 3fc957721d18c93662f7d4dab455b80f53dd2641 (patch) | |
tree | 9bdbabf3cb3678edcd0e0e4beb5deaa5c1b17bcd /lib | |
parent | 122a881c776b7c155bf3f379928cc27aab435288 (diff) |
lib: create common ascii hex array
Add a common hex array in hexdump.c so everyone can use it.
Add a common hi/lo helper to avoid the shifting masking that is
done to get the upper and lower nibbles of a byte value.
Pull the pack_hex_byte helper from kgdb as it is opencoded many
places in the tree that will be consolidated.
Signed-off-by: Harvey Harrison <harvey.harrison@gmail.com>
Acked-by: Paul Mundt <lethal@linux-sh.org>
Cc: Jason Wessel <jason.wessel@windriver.com>
Cc: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'lib')
-rw-r--r-- | lib/hexdump.c | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/lib/hexdump.c b/lib/hexdump.c index 343546550dc9..f07c0db81d26 100644 --- a/lib/hexdump.c +++ b/lib/hexdump.c | |||
@@ -12,6 +12,9 @@ | |||
12 | #include <linux/kernel.h> | 12 | #include <linux/kernel.h> |
13 | #include <linux/module.h> | 13 | #include <linux/module.h> |
14 | 14 | ||
15 | const char hex_asc[] = "0123456789abcdef"; | ||
16 | EXPORT_SYMBOL(hex_asc); | ||
17 | |||
15 | /** | 18 | /** |
16 | * hex_dump_to_buffer - convert a blob of data to "hex ASCII" in memory | 19 | * hex_dump_to_buffer - convert a blob of data to "hex ASCII" in memory |
17 | * @buf: data blob to dump | 20 | * @buf: data blob to dump |
@@ -93,8 +96,8 @@ void hex_dump_to_buffer(const void *buf, size_t len, int rowsize, | |||
93 | for (j = 0; (j < rowsize) && (j < len) && (lx + 4) < linebuflen; | 96 | for (j = 0; (j < rowsize) && (j < len) && (lx + 4) < linebuflen; |
94 | j++) { | 97 | j++) { |
95 | ch = ptr[j]; | 98 | ch = ptr[j]; |
96 | linebuf[lx++] = hex_asc(ch >> 4); | 99 | linebuf[lx++] = hex_asc_hi(ch); |
97 | linebuf[lx++] = hex_asc(ch & 0x0f); | 100 | linebuf[lx++] = hex_asc_lo(ch); |
98 | linebuf[lx++] = ' '; | 101 | linebuf[lx++] = ' '; |
99 | } | 102 | } |
100 | ascii_column = 3 * rowsize + 2; | 103 | ascii_column = 3 * rowsize + 2; |