Commit 5052fa84 authored by Neil Horman's avatar Neil Horman

prevent constant rescan on banned irqs

If you ban irqs with --polscript, the rescan detection code doesn't check the
banned irq list, so it treats them as new, and forces a rescan constantly.  Fix
this by teaching get_irq_info to check the banned list as well.  We can
differentiate banned vs. non-banned irqs by the new flags field here as well

Fixes 's avatarNeil Horman <>
parent e744a209
......@@ -90,6 +90,7 @@ void add_banned_irq(int irq)
new->irq = irq;
new->flags |= IRQ_FLAG_BANNED;
banned_irqs = g_list_append(banned_irqs, new);
......@@ -535,6 +536,10 @@ struct irq_info *get_irq_info(int irq)
find.irq = irq;
entry = g_list_find_custom(interrupts_db, &find, compare_ints);
if (!entry)
entry = g_list_find_custom(banned_irqs, &find, compare_ints);
return entry ? entry->data : NULL;
......@@ -30,6 +30,11 @@
#define IRQ_TYPE_MSIX 2
* IRQ Internal tracking flags
enum obj_type_e {
......@@ -55,6 +60,7 @@ struct irq_info {
int class;
int type;
int level;
int flags;
struct topo_obj *numa_node;
cpumask_t cpumask;
cpumask_t affinity_hint;
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment