On Mon, Aug 05, 2019 at 10:07:36AM +0200, Peter Zijlstra wrote: > On Sun, Aug 04, 2019 at 09:19:01PM -0700, Paul E. McKenney wrote: > > On Sun, Aug 04, 2019 at 01:24:46PM -0700, Paul E. McKenney wrote: > > > > For whatever it is worth, the things on my list include using 25 rounds > > > of resched_cpu() on each CPU with ten-jiffy wait between each (instead of > > > merely 10 rounds), using waitqueues or some such to actually force a > > > meaningful context switch on the other CPUs, etc. > > That really should not be needed. What are those other CPUs doing? Excellent question. It would be really nice to have a CPU-stopper stall warning, wouldn't it? But who knows? Maybe I am the only one to have run into this. However, the comment in multi_cpu_stop() just before the call to touch_nmi_watchdog() leads me to believe otherwise. ;-) > > Which appears to have reduced the bug rate by about a factor of two. > > (But statistics and all that.) > > Which is just weird.. Indeed. Your point being? > > I am now trying the same test, but with CONFIG_PREEMPT=y and without > > quite so much hammering on the scheduler. This is keying off Peter's > > earlier mention of preemption. If this turns out to be solid, perhaps > > we outlaw CONFIG_PREEMPT=n && CONFIG_NO_HZ_FULL=y? > > CONFIG_PREEMPT=n should work just fine, _something_ is off. Thank you, that is what I needed to know. Thanx, Paul