[PATCH] irq_domain: fix type mismatch in debugfs output format

From: Grant Likely
Date: Thu Apr 12 2012 - 18:28:42 EST


sizeof(void*) returns an unsigned long, but it was being used as a width parameter to a "%-*s" format string which requires an int. On 64 bit platforms this causes a type mismatch:

linux/kernel/irq/irqdomain.c:575: warning: field width should have type
'int', but argument 6 has type 'long unsigned int'

This change casts the size to an int so printf gets the right data type.

Reported-by: Andreas Schwab <schwab@xxxxxxxxxxxxxx>
Signed-off-by: Grant Likely <grant.likely@xxxxxxxxxxxx>
Cc: David Daney <david.daney@xxxxxxxxxx>
---
kernel/irq/irqdomain.c | 3 ++-
1 files changed, 2 insertions(+), 1 deletions(-)

diff --git a/kernel/irq/irqdomain.c b/kernel/irq/irqdomain.c
index d34413e..0e0ba5f 100644
--- a/kernel/irq/irqdomain.c
+++ b/kernel/irq/irqdomain.c
@@ -629,7 +629,8 @@ static int virq_debug_show(struct seq_file *m, void *private)
int i;

seq_printf(m, "%-5s %-7s %-15s %-*s %s\n", "irq", "hwirq",
- "chip name", 2 * sizeof(void *) + 2, "chip data", "domain name");
+ "chip name", (int)(2 * sizeof(void *) + 2), "chip data",
+ "domain name");

for (i = 1; i < nr_irqs; i++) {
desc = irq_to_desc(i);
--
1.7.9.1

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/