On Wed, Dec 18, 2013 at 12:43:18PM +0100, Peter Zijlstra wrote: > On Wed, Dec 18, 2013 at 12:49:15AM +0100, Frederic Weisbecker wrote: > > That's to start simple as CPU 0 can't be offlined. > > Yes it can, see CONFIG_BOOTPARAM_HOTPLUG_CPU0
Yeah it can but the tick hotplug callback prevent that to happen on nohz full. You can check out tick_nohz_cpu_down_callback() for details. I agree that rejecting CPU_DOWN_PREPARE requests is propably not the prettiest thing ever but that's the only solution that we have now. There must _always_ be a timekeeper to maintain timekeeping duty as long as there are full dynticks CPUs around. So one of these potential timekeepers has to stay online. And CPU 0 is quite a handy candidate since rejecting any other CPU's offlining request may block suspend. Now if it happens to be annoying for some reason, we can certainly change that behaviour in the future. This will involve forcing some full dynticks CPU to carry timekeeping but heh, if user does silly things :) -- 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/