From c823a6908468acc840fd959066a8079db36cd4b6 Mon Sep 17 00:00:00 2001 From: Viacheslav Hletenko Date: Fri, 2 May 2025 14:31:00 +0000 Subject: T7423: Add kernel boot options isolcpus, hugepages, numa_balancing Add kernel options which apply during the boot: - isolcpus - nohz_full - rcu_nocbs - default_hugepagesz - hugepages - hugepagesz - numa_balancing - hpet - mce - nosoftlockup - nmi_watchdog CLI: ``` set system option kernel cpu disable-nmi-watchdog set system option kernel cpu isolate-cpus '1,2,4-5' set system option kernel cpu nohz-full '1,2,4-5' set system option kernel cpu rcu-no-cbs '1,2,4-5' set system option kernel disable-hpet set system option kernel disable-mce set system option kernel disable-softlockup set system option kernel memory default-hugepage-size '2M' set system option kernel memory disable-numa-balancing set system option kernel memory hugepage-size 1G hugepage-count '2' set system option kernel memory hugepage-size 2M hugepage-count '512' ``` --- interface-definitions/system_option.xml.in | 146 ++++++++++++++++++++++++++++- 1 file changed, 145 insertions(+), 1 deletion(-) (limited to 'interface-definitions') diff --git a/interface-definitions/system_option.xml.in b/interface-definitions/system_option.xml.in index c9240064f..c0ea958a2 100644 --- a/interface-definitions/system_option.xml.in +++ b/interface-definitions/system_option.xml.in @@ -37,7 +37,145 @@ Kernel boot parameters - + + + CPU settings + + + + + Disable the NMI watchdog for detecting hard CPU lockups + + + + + + Isolate specified CPUs from the scheduler + + u32:0-511 + CPU core + + + <start-end> + CPU core range (examples: "1", "4-7", "1,2-5,7") + + + + + + + + + Enable full tickless mode for specified CPUs + + u32:0-511 + CPU core + + + <start-end> + CPU core range (examples: "1", "4-7", "1,2-5,7") + + + + + + + + + Offload Read-Copy-Update (RCU) callback processing to specified CPUs + + u32:0-511 + CPU core + + + <start-end> + CPU core range (examples: "1", "4-7", "1,2-5,7") + + + + + + + + + + + Memory settings + + + + + Disable automatic NUMA memory balancing + + + + + + Set default hugepage size (e.g., 2M, 1G) + + 2M 1G + + + 2M + 2 megabytes + + + 1G + 1 gigabyte + + + (2M|1G) + + + + + + Set hugepage size for allocation (e.g., 2M, 1G) + + 2M 1G + + + 2M + 2 megabytes + + + 1G + 1 gigabyte + + + (2M|1G) + + + + + + Allocate number of hugepages for system use + + u32 + Number of hugepages + + + + + + + + + + + + + Disable High Precision Event Timer (HPET) + + + + + + Disable Machine Check Exceptions (MCE) reporting and handling + + + + Disable all optional CPU mitigations @@ -69,6 +207,12 @@ + + + Disable soft lockup detector for kernel threads + + + Disable most log messages -- cgit v1.2.3