On Fri, 17 Apr 2015 14:37:17 -0400 Chris Metcalf <cmetcalf@xxxxxxxxxx> wrote: > Change the default behavior of watchdog so it only runs on the > housekeeping cores when nohz_full is enabled at build and boot time. > Allow modifying the set of cores the watchdog is currently running > on with a new kernel.watchdog_cpumask sysctl. > > If we allowed the watchdog to run on nohz_full cores, the timer > interrupts and scheduler work would prevent the desired tickless > operation on those cores. But if we disable the watchdog globally, > then the housekeeping cores can't benefit from the watchdog > functionality. So we allow disabling it only on some cores. > See Documentation/lockup-watchdogs.txt for more information. > > ... > > +watchdog_cpumask: > + > +This value can be used to control on which cpus the watchdog may run. > +The default cpumask is all possible cores, but if NO_HZ_FULL is > +enabled in the kernel config, and cores are specified with the > +nohz_full= boot argument, those cores are excluded by default. > +Offline cores can be included in this mask, and if the core is later > +brought online, the watchdog will be started based on the mask value. > + > +Typically this value would only be touched in the nohz_full case > +to re-enable cores that by default were not running the watchdog, > +if a kernel lockup was suspected on those cores. Now the reader is wondering "how the heck do I specify a cpumask". Is it hex encoded? decimal? binary string? Which bit corresponds to which CPU? A little example would help things along. -- To unsubscribe from this list: send the line "unsubscribe linux-doc" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html