kernel/lib/smp_processor_id.c
.. .. @@ -7,12 +7,16 @@ 7 7 #include <linux/export.h> 8 8 #include <linux/kprobes.h> 9 9 #include <linux/sched.h> 10 +#include <linux/irqstage.h>10 11 11 12 noinstr static 12 13 unsigned int check_preemption_disabled(const char *what1, const char *what2) 13 14 { 14 15 int this_cpu = raw_smp_processor_id(); 15 16 17 + if (hard_irqs_disabled() || !running_inband())18 + goto out;19 +16 20 if (likely(preempt_count())) 17 21 goto out; 18 22