[tip: irq/core] genirq: Improve "hwirq" output in /proc and /sys/

From: tip-bot2 for Cédric Le Goater
Date: Fri Jul 30 2021 - 17:10:42 EST


The following commit has been merged into the irq/core branch of tip:

Commit-ID: d92df42d7685445a2b6c815d9230d9699d9d400b
Gitweb: https://git.kernel.org/tip/d92df42d7685445a2b6c815d9230d9699d9d400b
Author: Cédric Le Goater <clg@xxxxxxxx>
AuthorDate: Thu, 01 Jul 2021 15:27:50 +02:00
Committer: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
CommitterDate: Fri, 30 Jul 2021 23:07:31 +02:00

genirq: Improve "hwirq" output in /proc and /sys/

The HW IRQ numbers generated by the PCI MSI layer can be quite large
on a pSeries machine when running under the IBM Hypervisor and they
appear as negative. Use '%lu' instead to show them correctly.

Signed-off-by: Cédric Le Goater <clg@xxxxxxxx>
Signed-off-by: Thomas Gleixner <tglx@xxxxxxxxxxxxx>

---
kernel/irq/irqdesc.c | 2 +-
kernel/irq/proc.c | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/kernel/irq/irqdesc.c b/kernel/irq/irqdesc.c
index fadb937..4e3c29b 100644
--- a/kernel/irq/irqdesc.c
+++ b/kernel/irq/irqdesc.c
@@ -188,7 +188,7 @@ static ssize_t hwirq_show(struct kobject *kobj,

raw_spin_lock_irq(&desc->lock);
if (desc->irq_data.domain)
- ret = sprintf(buf, "%d\n", (int)desc->irq_data.hwirq);
+ ret = sprintf(buf, "%lu\n", desc->irq_data.hwirq);
raw_spin_unlock_irq(&desc->lock);

return ret;
diff --git a/kernel/irq/proc.c b/kernel/irq/proc.c
index 7c5cd42..ee595ec 100644
--- a/kernel/irq/proc.c
+++ b/kernel/irq/proc.c
@@ -513,7 +513,7 @@ int show_interrupts(struct seq_file *p, void *v)
seq_printf(p, " %8s", "None");
}
if (desc->irq_data.domain)
- seq_printf(p, " %*d", prec, (int) desc->irq_data.hwirq);
+ seq_printf(p, " %*lu", prec, desc->irq_data.hwirq);
else
seq_printf(p, " %*s", prec, "");
#ifdef CONFIG_GENERIC_IRQ_SHOW_LEVEL