Messages in this thread | | | Date | Fri, 12 Mar 2021 12:36:41 +0100 | From | Frederic Weisbecker <> | Subject | Re: [PATCH tip/core/rcu 06/10] softirq: Don't try waking ksoftirqd before it has been spawned |
| |
On Wed, Mar 03, 2021 at 04:00:15PM -0800, paulmck@kernel.org wrote: > From: "Paul E. McKenney" <paulmck@kernel.org> > > If there is heavy softirq activity, the softirq system will attempt > to awaken ksoftirqd and will stop the traditional back-of-interrupt > softirq processing. This is all well and good, but only if the > ksoftirqd kthreads already exist, which is not the case during early > boot, in which case the system hangs. > > One reproducer is as follows: > > tools/testing/selftests/rcutorture/bin/kvm.sh --allcpus --duration 2 --configs "TREE03" --kconfig "CONFIG_DEBUG_LOCK_ALLOC=y CONFIG_PROVE_LOCKING=y CONFIG_NO_HZ_IDLE=y CONFIG_HZ_PERIODIC=n" --bootargs "threadirqs=1" --trust-make > > This commit therefore adds a couple of existence checks for ksoftirqd > and forces back-of-interrupt softirq processing when ksoftirqd does not > yet exist. With this change, the above test passes. > > Reported-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de> > Reported-by: Uladzislau Rezki <urezki@gmail.com> > Cc: Peter Zijlstra <peterz@infradead.org> > Cc: Thomas Gleixner <tglx@linutronix.de> > [ paulmck: Remove unneeded check per Sebastian Siewior feedback. ] > Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
Reviewed-by: Frederic Weisbecker <frederic@kernel.org>
| |