|
@@ -20,6 +20,7 @@
|
|
|
#include <linux/profile.h>
|
|
|
#include <linux/sched.h>
|
|
|
#include <linux/module.h>
|
|
|
+#include <linux/irq_work.h>
|
|
|
|
|
|
#include <asm/irq_regs.h>
|
|
|
|
|
@@ -289,7 +290,7 @@ static ktime_t tick_nohz_stop_sched_tick(struct tick_sched *ts,
|
|
|
} while (read_seqretry(&xtime_lock, seq));
|
|
|
|
|
|
if (rcu_needs_cpu(cpu, &rcu_delta_jiffies) || printk_needs_cpu(cpu) ||
|
|
|
- arch_needs_cpu(cpu)) {
|
|
|
+ arch_needs_cpu(cpu) || irq_work_needs_cpu()) {
|
|
|
next_jiffies = last_jiffies + 1;
|
|
|
delta_jiffies = 1;
|
|
|
} else {
|