Messages in this thread | | | Date | Sat, 16 May 2015 15:39:12 -0400 | From | Sasha Levin <> | Subject | Re: [PATCH 4/4] nohz: Set isolcpus when nohz_full is set |
| |
On 05/06/2015 12:04 PM, Frederic Weisbecker wrote: > From: Chris Metcalf <cmetcalf@ezchip.com> > > 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 <umgwanakikbuti@gmail.com> ["thumbs up!"] > Acked-by: Rik van Riel <riel@redhat.com> > Acked-by: Peter Zijlstra (Intel) <peterz@infradead.org> > Signed-off-by: Chris Metcalf <cmetcalf@ezchip.com> > Cc: Peter Zijlstra (Intel) <peterz@infradead.org> > Cc: Paul E. McKenney <paulmck@linux.vnet.ibm.com> > Cc: Rafael J. Wysocki <rafael.j.wysocki@intel.com> > Cc: Martin Schwidefsky <schwidefsky@de.ibm.com> > Cc: Mike Galbraith <umgwanakikbuti@gmail.com> > Cc: Ingo Molnar <mingo@redhat.com> > Cc: Rik van Riel <riel@redhat.com> > Signed-off-by: Frederic Weisbecker <fweisbec@gmail.com>
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
| |