[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <1605670578-23681-2-git-send-email-kernelfans@gmail.com>
Date: Wed, 18 Nov 2020 11:36:16 +0800
From: Pingfan Liu <kernelfans@...il.com>
To: linux-kernel@...r.kernel.org
Cc: Pingfan Liu <kernelfans@...il.com>,
Thomas Gleixner <tglx@...utronix.de>,
Jisheng Zhang <Jisheng.Zhang@...aptics.com>,
"Peter Zijlstra (Intel)" <peterz@...radead.org>,
Vlastimil Babka <vbabka@...e.cz>,
Andrew Morton <akpm@...ux-foundation.org>,
"Guilherme G. Piccoli" <gpiccoli@...onical.com>,
Petr Mladek <pmladek@...e.com>, kexec@...ts.infradead.org
Subject: [PATCH 1/3] x86/irq: account the unused irq
Accounting the unused irq in order to count it if irq flood.
Signed-off-by: Pingfan Liu <kernelfans@...il.com>
Cc: Thomas Gleixner <tglx@...utronix.de>
Cc: Jisheng Zhang <Jisheng.Zhang@...aptics.com>
Cc: "Peter Zijlstra (Intel)" <peterz@...radead.org>
Cc: Vlastimil Babka <vbabka@...e.cz>
Cc: Andrew Morton <akpm@...ux-foundation.org>
Cc: "Guilherme G. Piccoli" <gpiccoli@...onical.com>
Cc: Petr Mladek <pmladek@...e.com>
Cc: kexec@...ts.infradead.org
To: linux-kernel@...r.kernel.org
---
arch/x86/kernel/irq.c | 1 +
include/linux/kernel_stat.h | 1 +
2 files changed, 2 insertions(+)
diff --git a/arch/x86/kernel/irq.c b/arch/x86/kernel/irq.c
index c5dd503..6f583a7 100644
--- a/arch/x86/kernel/irq.c
+++ b/arch/x86/kernel/irq.c
@@ -254,6 +254,7 @@ DEFINE_IDTENTRY_IRQ(common_interrupt)
pr_emerg_ratelimited("%s: %d.%u No irq handler for vector\n",
__func__, smp_processor_id(),
vector);
+ __this_cpu_inc(kstat.unused_irqs_sum);
} else {
__this_cpu_write(vector_irq[vector], VECTOR_UNUSED);
}
diff --git a/include/linux/kernel_stat.h b/include/linux/kernel_stat.h
index 89f0745..c8d5cb8 100644
--- a/include/linux/kernel_stat.h
+++ b/include/linux/kernel_stat.h
@@ -37,6 +37,7 @@ struct kernel_cpustat {
struct kernel_stat {
unsigned long irqs_sum;
+ unsigned long unused_irqs_sum;
unsigned int softirqs[NR_SOFTIRQS];
};
--
2.7.5
Powered by blists - more mailing lists