irqbalance/add-a-catchall-guessing-mechanis.patch
2019-09-30 10:53:30 -04:00

53 lines
1.8 KiB
Diff

From 0906c9dcf1754bb2f32f9247608cc937650d2a0e Mon Sep 17 00:00:00 2001
From: Neil Horman <nhorman@tuxdriver.com>
Date: Fri, 4 May 2018 06:15:51 -0400
Subject: [PATCH] arm: Add a catchall guessing mechanism
Instead of spamming the logs to indicate we are guessing at an irq type,
and then not finding one, add a catchall regex to match on everything
last to assign the type and class as legacy/other, and report that
Signed-off-by: Neil Horman <nhorman@tuxdriver.com>
---
procinterrupts.c | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/procinterrupts.c b/procinterrupts.c
index eb84a1c..1aa4413 100644
--- a/procinterrupts.c
+++ b/procinterrupts.c
@@ -105,10 +105,12 @@ static void guess_arm_irq_hints(char *name, struct irq_info *info)
{
int i, rc;
static int compiled = 0;
+ /* Note: Last entry is a catchall */
static struct irq_match matches[] = {
{ "eth.*" ,{NULL} ,NULL, IRQ_TYPE_LEGACY, IRQ_GBETH },
{ "[A-Z0-9]{4}[0-9a-f]{4}", {NULL} ,check_platform_device, IRQ_TYPE_LEGACY, IRQ_OTHER},
{ "PNP[0-9a-f]{4}", {NULL} ,check_platform_device, IRQ_TYPE_LEGACY, IRQ_OTHER},
+ { ".*", {NULL}, NULL, IRQ_TYPE_LEGACY, IRQ_OTHER},
{NULL},
};
@@ -134,8 +136,7 @@ static void guess_arm_irq_hints(char *name, struct irq_info *info)
info->class = matches[i].class;
if (matches[i].refine_match)
matches[i].refine_match(name, info);
-
- log(TO_ALL, LOG_DEBUG, "IRQ %s(%d) is class %d\n", name, info->irq,info->class);
+ log(TO_ALL, LOG_DEBUG, "IRQ %s(%d) guessed as class %d\n", name, info->irq,info->class);
}
}
@@ -214,7 +215,6 @@ GList* collect_full_irq_list()
info->class = IRQ_VIRT_EVENT;
} else {
#ifdef AARCH64
- log(TO_ALL, LOG_DEBUG, "GUESSING AARCH64 CLASS FOR %s\n", irq_name);
guess_arm_irq_hints(irq_name, info);
#else
info->type = IRQ_TYPE_LEGACY;
--
2.21.0.windows.1