mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
To: Robert Elliott <elliott@hpe.com>,
	Matt Fleming <matt@codeblueprint.co.uk>,
	Andrew Morton <akpm@linux-foundation.org>,
	Thomas Gleixner <tglx@linutronix.de>,
	Ingo Molnar <mingo@redhat.com>, "H. Peter Anvin" <hpa@zytor.com>,
	linux-kernel@vger.kernel.org,
	Rasmus Villemoes <linux@rasmusvillemoes.dk>,
	Brian Norris <computersforpeace@gmail.com>,
	Hariprasad S <hariprasad@chelsio.com>
Cc: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Subject: [PATCH v2 02/11] lib/vsprintf: make default_dec_spec global
Date: Fri, 15 Jan 2016 00:23:32 +0200	[thread overview]
Message-ID: <1452810221-116505-3-git-send-email-andriy.shevchenko@linux.intel.com> (raw)
In-Reply-To: <1452810221-116505-1-git-send-email-andriy.shevchenko@linux.intel.com>

There are places where default specification to print decimal numbers is used.
Make it global and convert existing users.

Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
---
 lib/test_printf.c |  5 +++--
 lib/vsprintf.c    | 21 +++++++++------------
 2 files changed, 12 insertions(+), 14 deletions(-)

diff --git a/lib/test_printf.c b/lib/test_printf.c
index 4f6ae60..fd985f6 100644
--- a/lib/test_printf.c
+++ b/lib/test_printf.c
@@ -376,9 +376,10 @@ large_bitmap(void)
 	if (!bits)
 		return;
 
-	bitmap_set(bits, 1, 20);
+	bitmap_set(bits, 0, 1);
+	bitmap_set(bits, 2, 20);
 	bitmap_set(bits, 60000, 15);
-	test("1-20,60000-60014", "%*pbl", nbits, bits);
+	test("0,2-21,60000-60014", "%*pbl", nbits, bits);
 	kfree(bits);
 }
 
diff --git a/lib/vsprintf.c b/lib/vsprintf.c
index fe6ffe3..53a6e7c 100644
--- a/lib/vsprintf.c
+++ b/lib/vsprintf.c
@@ -666,6 +666,11 @@ char *symbol_string(char *buf, char *end, void *ptr,
 #endif
 }
 
+static const struct printf_spec default_dec_spec = {
+	.base = 10,
+	.precision = -1,
+};
+
 static noinline_for_stack
 char *resource_string(char *buf, char *end, struct resource *res,
 		      struct printf_spec spec, const char *fmt)
@@ -695,11 +700,6 @@ char *resource_string(char *buf, char *end, struct resource *res,
 		.precision = -1,
 		.flags = SMALL | ZEROPAD,
 	};
-	static const struct printf_spec dec_spec = {
-		.base = 10,
-		.precision = -1,
-		.flags = 0,
-	};
 	static const struct printf_spec str_spec = {
 		.field_width = -1,
 		.precision = 10,
@@ -733,10 +733,10 @@ char *resource_string(char *buf, char *end, struct resource *res,
 		specp = &mem_spec;
 	} else if (res->flags & IORESOURCE_IRQ) {
 		p = string(p, pend, "irq ", str_spec);
-		specp = &dec_spec;
+		specp = &default_dec_spec;
 	} else if (res->flags & IORESOURCE_DMA) {
 		p = string(p, pend, "dma ", str_spec);
-		specp = &dec_spec;
+		specp = &default_dec_spec;
 	} else if (res->flags & IORESOURCE_BUS) {
 		p = string(p, pend, "bus ", str_spec);
 		specp = &bus_spec;
@@ -866,9 +866,6 @@ char *bitmap_list_string(char *buf, char *end, unsigned long *bitmap,
 	int cur, rbot, rtop;
 	bool first = true;
 
-	/* reused to print numbers */
-	spec = (struct printf_spec){ .base = 10 };
-
 	rbot = cur = find_first_bit(bitmap, nr_bits);
 	while (cur < nr_bits) {
 		rtop = cur;
@@ -880,10 +877,10 @@ char *bitmap_list_string(char *buf, char *end, unsigned long *bitmap,
 			buf = put_one_char(buf, end, ',');
 		first = false;
 
-		buf = number(buf, end, rbot, spec);
+		buf = number(buf, end, rbot, default_dec_spec);
 		if (rbot < rtop) {
 			buf = put_one_char(buf, end, '-');
-			buf = number(buf, end, rtop, spec);
+			buf = number(buf, end, rtop, default_dec_spec);
 		}
 
 		rbot = cur;
-- 
2.6.4

  parent reply	other threads:[~2016-01-14 22:27 UTC|newest]

Thread overview: 20+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-01-14 22:23 [PATCH v2 00/11] lib/vsprintf: refactor and introduce %pl specifier Andy Shevchenko
2016-01-14 22:23 ` [PATCH v2 01/11] lib/vsprintf: introduce put_one_char() for 3 line idiom Andy Shevchenko
2016-01-18 20:35   ` Rasmus Villemoes
2016-01-14 22:23 ` Andy Shevchenko [this message]
2016-01-18 20:38   ` [PATCH v2 02/11] lib/vsprintf: make default_dec_spec global Rasmus Villemoes
2016-01-14 22:23 ` [PATCH v2 03/11] lib/vsprintf: make default_str_spec global Andy Shevchenko
2016-01-14 22:23 ` [PATCH v2 04/11] lib/string_helpers: export string_units_{2,10} for others Andy Shevchenko
2016-01-14 22:23 ` [PATCH v2 05/11] lib/string_helpers: fix indentation in few places Andy Shevchenko
2016-01-14 22:23 ` [PATCH v2 06/11] lib/vsprintf: introduce %pl to print in human-readable form Andy Shevchenko
2016-01-15  3:04   ` Joe Perches
2016-01-18 20:57   ` Rasmus Villemoes
2016-01-21 21:13   ` H. Peter Anvin
2016-01-14 22:23 ` [PATCH v2 07/11] x86/efi: print size and base in binary units in efi_print_memmap Andy Shevchenko
2016-01-14 22:23 ` [PATCH v2 08/11] lib/vsprintf: allow range of prefix for %pl[From[To]] Andy Shevchenko
2016-01-18 21:40   ` Rasmus Villemoes
2016-01-14 22:23 ` [PATCH v2 09/11] lib/vsprintf: use precision field with %pl[From[To]] Andy Shevchenko
2016-01-18 22:21   ` Rasmus Villemoes
2016-01-14 22:23 ` [PATCH v2 10/11] cxgb4: print value in human-readable form via %.0plKM Andy Shevchenko
2016-01-14 22:23 ` [PATCH v2 11/11] pcmciamtd: " Andy Shevchenko
2016-01-21 12:51 ` [PATCH v2 00/11] lib/vsprintf: refactor and introduce %pl specifier Andy Shevchenko

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=1452810221-116505-3-git-send-email-andriy.shevchenko@linux.intel.com \
    --to=andriy.shevchenko@linux.intel.com \
    --cc=akpm@linux-foundation.org \
    --cc=computersforpeace@gmail.com \
    --cc=elliott@hpe.com \
    --cc=hariprasad@chelsio.com \
    --cc=hpa@zytor.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux@rasmusvillemoes.dk \
    --cc=matt@codeblueprint.co.uk \
    --cc=mingo@redhat.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

Powered by JetHome