Unverified Commit 5cc57e85 authored by openeuler-ci-bot's avatar openeuler-ci-bot Committed by Gitee
Browse files

!14725 Merge OLK-6.6 to 25.03

Merge Pull Request from: @anred 
 
Merge OLK-6.6 to 25.03 
 
Link:https://gitee.com/openeuler/kernel/pulls/14725

 

Reviewed-by: default avatarZheng Zengkai <zhengzengkai@huawei.com>
Signed-off-by: default avatarZheng Zengkai <zhengzengkai@huawei.com>
parents f943fb92 fc1d9b69
Loading
Loading
Loading
Loading
+39 −0
Original line number Diff line number Diff line
@@ -268,6 +268,45 @@ Description: Discover CPUs in the same CPU frequency coordination domain
		This file is only present if the acpi-cpufreq or the cppc-cpufreq
		drivers are in use.

What:		/sys/devices/system/cpu/cpuX/cpufreq/auto_act_window
Date:		October 2024
Contact:	linux-pm@vger.kernel.org
Description:	Autonomous activity window

		This file indicates a moving utilization sensitivity window to
		the platform's autonomous selection policy.

		Read/write an integer represents autonomous activity window (in
		microseconds) from/to this file. The max value to write is
		1270000000 but the max significand is 127. This means that if 128
		is written to this file, 127 will be stored. If the value is
		greater than 130, only the first two digits will be saved as
		significand.

		Writing a zero value to this file enable the platform to
		determine an appropriate Activity Window depending on the workload.

		Writing to this file only has meaning when Autonomous Selection is
		enabled.

		This file only presents if the cppc-cpufreq driver is in use.

What:		/sys/devices/system/cpu/cpuX/cpufreq/energy_perf
Date:		October 2024
Contact:	linux-pm@vger.kernel.org
Description:	Energy performance preference

		Read/write an 8-bit integer from/to this file. This file
		represents a range of values from 0 (performance preference) to
		0xFF (energy efficiency preference) that influences the rate of
		performance increase/decrease and the result of the hardware's
		energy efficiency and performance optimization policies.

		Writing to this file only has meaning when Autonomous Selection is
		enabled.

		This file only presents if the cppc-cpufreq driver is in use.


What:		/sys/devices/system/cpu/cpu*/cache/index3/cache_disable_{0,1}
Date:		August 2008
+11 −0
Original line number Diff line number Diff line
What:		/sys/fs/virtiofs/<n>/tag
Date:		Feb 2024
Contact:	virtio-fs@lists.linux.dev
Description:
		[RO] The mount "tag" that can be used to mount this filesystem.

What:		/sys/fs/virtiofs/<n>/device
Date:		Feb 2024
Contact:	virtio-fs@lists.linux.dev
Description:
		Symlink to the virtio device that exports this filesystem.
+13 −3
Original line number Diff line number Diff line
@@ -4011,9 +4011,10 @@
			vulnerability. System may allow data leaks with this
			option.

	no-steal-acc	[X86,PV_OPS,ARM64,PPC/PSERIES] Disable paravirtualized
			steal time accounting. steal time is computed, but
			won't influence scheduler behaviour
	no-steal-acc	[X86,PV_OPS,ARM64,PPC/PSERIES,RISCV,LOONGARCH,EARLY]
			Disable paravirtualized steal time accounting. steal time
			is computed, but won't influence scheduler behaviour


	nosync		[HW,M68K] Disables sync negotiation for all devices.

@@ -6523,6 +6524,15 @@
			<deci-seconds>: poll all this frequency
			0: no polling (default)

	thp_anon=	[KNL]
			Format: <size>[KMG],<size>[KMG]:<state>;<size>[KMG]-<size>[KMG]:<state>
			state is one of "always", "madvise", "never" or "inherit".
			Control the default behavior of the system with respect
			to anonymous transparent hugepages.
			Can be used multiple times for multiple anon THP sizes.
			See Documentation/admin-guide/mm/transhuge.rst for more
			details.

	threadirqs	[KNL]
			Force threading of all interrupt handlers except those
			marked explicitly IRQF_NO_THREAD.
+36 −7
Original line number Diff line number Diff line
@@ -317,13 +317,37 @@ processes. Exceeding the number would block the collapse::

A higher value may increase memory footprint for some workloads.

Boot parameter
==============

You can change the sysfs boot time defaults of Transparent Hugepage
Support by passing the parameter ``transparent_hugepage=always`` or
``transparent_hugepage=madvise`` or ``transparent_hugepage=never``
to the kernel command line.
Boot parameters
===============

You can change the sysfs boot time default for the top-level "enabled"
control by passing the parameter ``transparent_hugepage=always`` or
``transparent_hugepage=madvise`` or ``transparent_hugepage=never`` to the
kernel command line.

Alternatively, each supported anonymous THP size can be controlled by
passing ``thp_anon=<size>[KMG],<size>[KMG]:<state>;<size>[KMG]-<size>[KMG]:<state>``,
where ``<size>`` is the THP size (must be a power of 2 of PAGE_SIZE and
supported anonymous THP)  and ``<state>`` is one of ``always``, ``madvise``,
``never`` or ``inherit``.

For example, the following will set 16K, 32K, 64K THP to ``always``,
set 128K, 512K to ``inherit``, set 256K to ``madvise`` and 1M, 2M
to ``never``::

	thp_anon=16K-64K:always;128K,512K:inherit;256K:madvise;1M-2M:never

``thp_anon=`` may be specified multiple times to configure all THP sizes as
required. If ``thp_anon=`` is specified at least once, any anon THP sizes
not explicitly configured on the command line are implicitly set to
``never``.

``transparent_hugepage`` setting only affects the global toggle. If
``thp_anon`` is not specified, PMD_ORDER THP will default to ``inherit``.
However, if a valid ``thp_anon`` setting is provided by the user, the
PMD_ORDER THP policy will be overridden. If the policy for PMD_ORDER
is not defined within a valid ``thp_anon``, its policy will default to
``never``.

Hugepages in tmpfs/shmem
========================
@@ -560,6 +584,11 @@ split_deferred
        it would free up some memory. Pages on split queue are going to
        be split under memory pressure, if splitting is possible.

nr_anon
       the number of anonymous THP we have in the whole system. These THPs
       might be currently entirely mapped or have partially unmapped/unused
       subpages.

As the system ages, allocating huge pages may be expensive as the
system uses memory compaction to copy data around memory to free a
huge page for use. There are some counters in ``/proc/vmstat`` to help
+42 −0
Original line number Diff line number Diff line
@@ -590,6 +590,48 @@ This governor exposes the following tunables:
	It effectively causes the frequency to go down ``sampling_down_factor``
	times slower than it ramps up.

``seep``
------------

This governor is specifically designed for platforms with hardware-managed P-states
through CPPC (Collaborative Processor Performance Control). Unlike other governors
that implement their own frequency scaling algorithms, the ``seep`` governor
delegates the P-state selection to the hardware/firmware by enabling CPPC
autonomous mode.

The governor requires the ``cppc_cpufreq`` driver and the platform must support
three key CPPC capabilities:
 * Autonomous selection (auto_sel)
 * Autonomous activity window (auto_act_window)
 * Energy-Performance Preference (EPP)

When this governor is attached to a policy, it enables the hardware autonomous
mode, allowing the processor's firmware to directly manage frequency scaling based
on workload characteristics. The actual P-state selection algorithms are
implemented in firmware/hardware rather than in the operating system.

This governor exposes the following tunables (per-policy):

``auto_act_window``
	The time window (in microseconds) used by the hardware/firmware to observe
	and evaluate workload characteristics before making P-state decisions.
	A smaller window makes the algorithm more responsive but potentially less
	stable, while a larger window provides more stable but less responsive
	frequency scaling.

``energy_perf``
	A value between 0 and 255 that biases the hardware's frequency scaling
	decisions between performance and energy efficiency. Lower values (closer
	to 0) favor performance at the expense of power consumption, while higher
	values (closer to 255) favor energy efficiency but may impact performance.

The ``seep`` governor is particularly suitable for platforms where the hardware
has more accurate and fine-grained information about the system's power and
thermal constraints than the operating system. It can potentially provide better
energy efficiency than software-based governors while maintaining good
performance, as the hardware can make faster and more informed P-state
decisions.


Frequency Boost Support
=======================
Loading