Procházet zdrojové kódy

kernel: enable pressure interface

PSI provides a canonical way to see resource pressure increases as
they develop, with pressure metrics for three major resources:
memory, CPU, and IO. PSI stats are like barometers that provide
fair warning of impending resource shortages, enabling users to
take more proactive, granular, and nuanced steps when resources
start becoming scarce.

References:
* https://www.kernel.org/doc/html/latest/accounting/psi.html
* https://lwn.net/Articles/759781/

Build system: x86/64
Build-tested: x86/64/AMD Cezanne, flogic/glinet_gl-mt6000
Run-tested: x86/64/AMD Cezanne, flogic/glinet_gl-mt6000

Signed-off-by: John Audia <[email protected]>
Link: https://github.com/openwrt/openwrt/pull/13819
Signed-off-by: Hauke Mehrtens <[email protected]>
(cherry picked from commit eed39d45c2ff901b5327c7ab63c9131166e3140e)
Link: https://github.com/openwrt/openwrt/pull/17097
Signed-off-by: Petr Štetiar <[email protected]>
John Audia před 2 roky
rodič
revize
9e73f794ad
2 změnil soubory, kde provedl 20 přidání a 0 odebrání
  1. 19 0
      config/Config-kernel.in
  2. 1 0
      target/linux/generic/config-6.6

+ 19 - 0
config/Config-kernel.in

@@ -333,6 +333,25 @@ if KERNEL_TASKSTATS
 
 endif
 
+config KERNEL_PSI
+	bool "Compile the kernel with pressure stall information tracking"
+	help
+	  Collect metrics that indicate how overcommitted the CPU, memory,
+	  and IO capacity are in the system.
+
+	  If you say Y here, the kernel will create /proc/pressure/ with the
+	  pressure statistics files cpu, memory, and io. These will indicate
+	  the share of walltime in which some or all tasks in the system are
+	  delayed due to contention of the respective resource.
+
+	  In kernels with cgroup support, cgroups (cgroup2 only) will
+	  have cpu.pressure, memory.pressure, and io.pressure files,
+	  which aggregate pressure stalls for the grouped tasks only.
+
+	  For more details see Documentation/accounting/psi.rst.
+
+	  Say N if unsure.
+
 config KERNEL_KALLSYMS
 	bool "Compile the kernel with symbol table information"
 	default y if !SMALL_FLASH

+ 1 - 0
target/linux/generic/config-6.6

@@ -4758,6 +4758,7 @@ CONFIG_PROC_SYSCTL=y
 # CONFIG_PSB6970_PHY is not set
 # CONFIG_PSE_CONTROLLER is not set
 # CONFIG_PSI is not set
+# CONFIG_PSI_DEFAULT_DISABLED is not set
 # CONFIG_PSTORE is not set
 # CONFIG_PSTORE_BLK is not set
 # CONFIG_PSTORE_COMPRESS is not set