Re: [PATCH 07/27] nohz: Assign timekeeping duty to a non-full-nohz CPU

From: Frederic Weisbecker
Date: Fri Jan 04 2013 - 07:51:34 EST


2013/1/2 Christoph Lameter <cl@xxxxxxxxx>:
> On Sat, 29 Dec 2012, Frederic Weisbecker wrote:
>
>> @@ -163,6 +164,8 @@ static int __init tick_nohz_full_setup(char *str)
>> return 1;
>> }
>> __setup("full_nohz=", tick_nohz_full_setup);
>> +#else
>> +#define have_full_nohz_mask (0)
>> #endif
>>
>> /*
>> @@ -512,6 +515,10 @@ static bool can_stop_idle_tick(int cpu, struct tick_sched *ts)
>> return false;
>> }
>>
>> + /* If there are full nohz CPUs around, we need to keep the timekeeping duty */
>> + if (have_full_nohz_mask && tick_do_timer_cpu == cpu)
>> + return false;
>> +
>> return true;
>> }
>>
>>
>
> Ok so I guess this means that if I setup all cpus as nohz then a random
> one will continue to do timekeeping?

In fact, although the code doesn't check that yet, you're supposed to
have at least one online CPU outside the full_nohz mask to handle
that.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/