aboutsummaryrefslogtreecommitdiffstats
path: root/lib
diff options
context:
space:
mode:
Diffstat (limited to 'lib')
-rw-r--r--lib/vsprintf.c21
1 files changed, 8 insertions, 13 deletions
diff --git a/lib/vsprintf.c b/lib/vsprintf.c
index 0c23b006b495..c789d265311b 100644
--- a/lib/vsprintf.c
+++ b/lib/vsprintf.c
@@ -698,6 +698,12 @@ static const struct printf_spec default_str_spec = {
698 .precision = -1, 698 .precision = -1,
699}; 699};
700 700
701static const struct printf_spec default_flag_spec = {
702 .base = 16,
703 .precision = -1,
704 .flags = SPECIAL | SMALL,
705};
706
701static const struct printf_spec default_dec_spec = { 707static const struct printf_spec default_dec_spec = {
702 .base = 10, 708 .base = 10,
703 .precision = -1, 709 .precision = -1,
@@ -737,11 +743,6 @@ char *resource_string(char *buf, char *end, struct resource *res,
737 .precision = 10, 743 .precision = 10,
738 .flags = LEFT, 744 .flags = LEFT,
739 }; 745 };
740 static const struct printf_spec flag_spec = {
741 .base = 16,
742 .precision = -1,
743 .flags = SPECIAL | SMALL,
744 };
745 746
746 /* 32-bit res (sizeof==4): 10 chars in dec, 10 in hex ("0x" + 8) 747 /* 32-bit res (sizeof==4): 10 chars in dec, 10 in hex ("0x" + 8)
747 * 64-bit res (sizeof==8): 20 chars in dec, 18 in hex ("0x" + 16) */ 748 * 64-bit res (sizeof==8): 20 chars in dec, 18 in hex ("0x" + 16) */
@@ -798,7 +799,7 @@ char *resource_string(char *buf, char *end, struct resource *res,
798 p = string(p, pend, " disabled", str_spec); 799 p = string(p, pend, " disabled", str_spec);
799 } else { 800 } else {
800 p = string(p, pend, " flags ", str_spec); 801 p = string(p, pend, " flags ", str_spec);
801 p = number(p, pend, res->flags, flag_spec); 802 p = number(p, pend, res->flags, default_flag_spec);
802 } 803 }
803 *p++ = ']'; 804 *p++ = ']';
804 *p = '\0'; 805 *p = '\0';
@@ -1466,12 +1467,6 @@ char *format_flags(char *buf, char *end, unsigned long flags,
1466 const struct trace_print_flags *names) 1467 const struct trace_print_flags *names)
1467{ 1468{
1468 unsigned long mask; 1469 unsigned long mask;
1469 const struct printf_spec numspec = {
1470 .flags = SPECIAL|SMALL,
1471 .field_width = -1,
1472 .precision = -1,
1473 .base = 16,
1474 };
1475 1470
1476 for ( ; flags && names->name; names++) { 1471 for ( ; flags && names->name; names++) {
1477 mask = names->mask; 1472 mask = names->mask;
@@ -1489,7 +1484,7 @@ char *format_flags(char *buf, char *end, unsigned long flags,
1489 } 1484 }
1490 1485
1491 if (flags) 1486 if (flags)
1492 buf = number(buf, end, flags, numspec); 1487 buf = number(buf, end, flags, default_flag_spec);
1493 1488
1494 return buf; 1489 return buf;
1495} 1490}