[PATCH v2 2/4] sched/isolation: Improve documentation

From: Leonardo Bras
Date: Thu Oct 13 2022 - 14:45:42 EST


Improve documentation on housekeeping types and what to expect from
housekeeping functions.

Signed-off-by: Leonardo Bras <leobras@xxxxxxxxxx>
---
include/linux/sched/isolation.h | 25 ++++++++++++++++---------
1 file changed, 16 insertions(+), 9 deletions(-)

diff --git a/include/linux/sched/isolation.h b/include/linux/sched/isolation.h
index 762701f295d1c..9333c28153a7a 100644
--- a/include/linux/sched/isolation.h
+++ b/include/linux/sched/isolation.h
@@ -7,18 +7,25 @@
#include <linux/tick.h>

enum hk_type {
- HK_TYPE_TIMER,
- HK_TYPE_RCU,
- HK_TYPE_MISC,
- HK_TYPE_SCHED,
- HK_TYPE_TICK,
- HK_TYPE_DOMAIN,
- HK_TYPE_WQ,
- HK_TYPE_MANAGED_IRQ,
- HK_TYPE_KTHREAD,
+ HK_TYPE_TIMER, /* Timer interrupt, watchdogs */
+ HK_TYPE_RCU, /* RCU callbacks */
+ HK_TYPE_MISC, /* Minor housekeeping categories */
+ HK_TYPE_SCHED, /* Scheduling and idle load balancing */
+ HK_TYPE_TICK, /* See isolcpus=nohz boot parameter */
+ HK_TYPE_DOMAIN, /* See isolcpus=domain boot parameter*/
+ HK_TYPE_WQ, /* Work Queues*/
+ HK_TYPE_MANAGED_IRQ, /* See isolcpus=managed_irq boot parameter */
+ HK_TYPE_KTHREAD, /* kernel threads */
HK_TYPE_MAX
};

+/* Kernel parameters like nohz_full and isolcpus allow passing cpu numbers
+ * for disabling housekeeping types.
+ *
+ * The functions bellow work the opposite way, by referencing which cpus
+ * are able to perform the housekeeping type in parameter.
+ */
+
#ifdef CONFIG_CPU_ISOLATION
DECLARE_STATIC_KEY_FALSE(housekeeping_overridden);
int housekeeping_any_cpu(enum hk_type type);
--
2.38.0