On 05/06/2015 12:04 PM, Frederic Weisbecker wrote: > From: Chris Metcalf <[email protected]> > > nohz_full is only useful with isolcpus also set, since otherwise the > scheduler has to run periodically to try to determine whether to steal > work from other cores. > > Accordingly, when booting with nohz_full=xxx on the command line, we > should act as if isolcpus=xxx was also set, and set (or extend) the > isolcpus set to include the nohz_full cpus. > > Acked-by: Mike Galbraith <[email protected]> ["thumbs up!"] > Acked-by: Rik van Riel <[email protected]> > Acked-by: Peter Zijlstra (Intel) <[email protected]> > Signed-off-by: Chris Metcalf <[email protected]> > Cc: Peter Zijlstra (Intel) <[email protected]> > Cc: Paul E. McKenney <[email protected]> > Cc: Rafael J. Wysocki <[email protected]> > Cc: Martin Schwidefsky <[email protected]> > Cc: Mike Galbraith <[email protected]> > Cc: Ingo Molnar <[email protected]> > Cc: Rik van Riel <[email protected]> > Signed-off-by: Frederic Weisbecker <[email protected]>
Hi folks, I've noticed a regression in my testing a few days ago and bisected it down to this patch. I was seeing frequent soft lockups/RCU lockups and the load of the testing VMs would go beyond 400-500 (on 32 VCPU guests) - note I'm booting them with nohz_full=1-27. This patch sort of explains the behaviour I was seeing now: most of the cores are no longer being used by the scheduler, and the remaining cores can't deal with the load imposed on them which results in "lockups" which are really just the CPUs being unable to keep up. I always thought that nohz_full without isolcpus meant that the cores would be available to the scheduler, but it won't interfere if there is one task running on them. It seems that this patch changed that behaviour. Did I misunderstand that? Thanks, Sasha -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [email protected] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/

