hc
2023-12-11 6778948f9de86c3cfaf36725a7c87dcff9ba247f
kernel/include/linux/hardirq.h
....@@ -6,7 +6,6 @@
66 #include <linux/preempt.h>
77 #include <linux/lockdep.h>
88 #include <linux/ftrace_irq.h>
9
-#include <linux/sched.h>
109 #include <linux/vtime.h>
1110 #include <asm/hardirq.h>
1211
....@@ -33,9 +32,9 @@
3332 */
3433 #define __irq_enter() \
3534 do { \
35
+ account_irq_enter_time(current); \
3636 preempt_count_add(HARDIRQ_OFFSET); \
3737 lockdep_hardirq_enter(); \
38
- account_hardirq_enter(current); \
3938 } while (0)
4039
4140 /*
....@@ -63,8 +62,8 @@
6362 */
6463 #define __irq_exit() \
6564 do { \
66
- account_hardirq_exit(current); \
6765 lockdep_hardirq_exit(); \
66
+ account_irq_exit_time(current); \
6867 preempt_count_sub(HARDIRQ_OFFSET); \
6968 } while (0)
7069
....@@ -116,6 +115,7 @@
116115 do { \
117116 lockdep_off(); \
118117 arch_nmi_enter(); \
118
+ printk_nmi_enter(); \
119119 BUG_ON(in_nmi() == NMI_MASK); \
120120 __preempt_count_add(NMI_OFFSET + HARDIRQ_OFFSET); \
121121 } while (0)
....@@ -134,6 +134,7 @@
134134 do { \
135135 BUG_ON(!in_nmi()); \
136136 __preempt_count_sub(NMI_OFFSET + HARDIRQ_OFFSET); \
137
+ printk_nmi_exit(); \
137138 arch_nmi_exit(); \
138139 lockdep_on(); \
139140 } while (0)