diff options
author | Jens Axboe <axboe@kernel.dk> | 2021-02-12 08:27:51 -0700 |
---|---|---|
committer | Jens Axboe <axboe@kernel.dk> | 2021-02-12 08:27:51 -0700 |
commit | 93e4f73a93717993bd239e6606689e9ae01c6926 (patch) | |
tree | f64a7f0354dff6475b5fba0c97817832112aa96e | |
parent | 92bf22614b21a2706f4993b278017e437f7785b3 (diff) | |
parent | 66040b2d5d41f85cb1a752a75260595344c5ec3b (diff) |
Merge branch 'sched/smp' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip into for-5.12/block-ipi
* 'sched/smp' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
smp: Process pending softirqs in flush_smp_call_function_from_idle()
-rw-r--r-- | kernel/smp.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/kernel/smp.c b/kernel/smp.c index 1b6070bf97bb..aeb0adfa0606 100644 --- a/kernel/smp.c +++ b/kernel/smp.c @@ -14,6 +14,7 @@ #include <linux/export.h> #include <linux/percpu.h> #include <linux/init.h> +#include <linux/interrupt.h> #include <linux/gfp.h> #include <linux/smp.h> #include <linux/cpu.h> @@ -449,6 +450,9 @@ void flush_smp_call_function_from_idle(void) local_irq_save(flags); flush_smp_call_function_queue(true); + if (local_softirq_pending()) + do_softirq(); + local_irq_restore(flags); } |