Hi Wanpeng, Jason, On 03/27/2015 10:37 AM, Jason Low wrote: > On Fri, 2015-03-27 at 10:12 +0800, Wanpeng Li wrote: >> Hi Preeti, >> On Thu, Mar 26, 2015 at 06:32:44PM +0530, Preeti U Murthy wrote: >>> >>> 1. An ILB CPU was chosen from the first numa domain to trigger nohz idle >>> load balancing [Given the experiment, upto 6 CPUs per core could be >>> potentially idle in this domain.] >>> >>> 2. However the ILB CPU would call load_balance() on itself before >>> initiating nohz idle load balancing. >>> >>> 3. Given cores are SMT8, the ILB CPU had enough opportunities to pull >>> tasks from its sibling cores to even out load. >>> >>> 4. Now that the ILB CPU was no longer idle, it would abort nohz idle >>> load balancing >> >> I don't see abort nohz idle load balancing when ILB CPU was no longer idle >> in nohz_idle_balance(), could you explain more in details? > > Hi Wanpeng, > > In nohz_idle_balance(), there is a check for need_resched() so if the > cpu has something to run, it should exit nohz_idle_balance(), which may > cause it to not do the idle balancing on the other CPUs.
You are right, it is need_resched() causing the issue. I am sorry I overlooked that 'idle' was not a pointer. Thanks a lot for pointing out the issue :) But the patch still does good as you will agree, and the changelog has no specific mention to the 'idle' parameter but describes the issue in general. Hence, we are good. Regards Preeti U Murthy > > > -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/