]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
genirq: Consistently use '%u' format specifier for unsigned int variables
authorAndy Shevchenko <andriy.shevchenko@linux.intel.com>
Fri, 9 May 2025 15:46:42 +0000 (18:46 +0300)
committerThomas Gleixner <tglx@linutronix.de>
Tue, 13 May 2025 07:43:32 +0000 (09:43 +0200)
There are three cases in the genirq code when the irq, as an unsigned
integer variable, is converted to text representation by sprintf().
In two cases it uses '%d' specifier which is for signed values. While
it's not a problem right now, potentially it might be in the future
in case too big (> INT_MAX) number will appear there.

Consistently use '%u' format specifier for @irq which is declared as
unsigned int in all these cases.

Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Link: https://lore.kernel.org/all/20250509154643.1499171-1-andriy.shevchenko@linux.intel.com
kernel/irq/debugfs.c
kernel/irq/proc.c

index 9004a17b93a2f03770cf5fffaf8f309a854375bc..3d6a5b3cfaf3f78775aeb729d873d38a860600f4 100644 (file)
@@ -230,7 +230,7 @@ void irq_add_debugfs_entry(unsigned int irq, struct irq_desc *desc)
        if (!irq_dir || !desc || desc->debugfs_file)
                return;
 
-       sprintf(name, "%d", irq);
+       sprintf(name, "%u", irq);
        desc->debugfs_file = debugfs_create_file(name, 0644, irq_dir, desc,
                                                 &dfs_irq_ops);
 }
index 94eba9a425c49b1de75cf87bd80c8e983ff4a5d9..29c2404e743be04c46aa6dee07ec7ccba5f47ac9 100644 (file)
@@ -309,7 +309,7 @@ static bool name_unique(unsigned int irq, struct irqaction *new_action)
 
 void register_handler_proc(unsigned int irq, struct irqaction *action)
 {
-       char name [MAX_NAMELEN];
+       char name[MAX_NAMELEN];
        struct irq_desc *desc = irq_to_desc(irq);
 
        if (!desc->dir || action->dir || !action->name || !name_unique(irq, action))
@@ -345,7 +345,7 @@ void register_irq_proc(unsigned int irq, struct irq_desc *desc)
                return;
 
        /* create /proc/irq/1234 */
-       sprintf(name, "%d", irq);
+       sprintf(name, "%u", irq);
        desc->dir = proc_mkdir(name, root_irq_dir);
        if (!desc->dir)
                return;