Dieser Inhalt ist in der von Ihnen ausgewählten Sprache nicht verfügbar.
Chapter 4. Important changes to external kernel parameters
Review major changes in the Red Hat Enterprise Linux 10.2 kernel to understand impacts on your system configuration. These changes could include, for example, updates to proc entries, sysctl and sysfs default values, boot parameters, and other kernel options.
4.1. New kernel parameters Link kopierenLink in die Zwischenablage kopiert!
- microcode=
[X86] Control the behavior of the microcode loader.
Options:
-
base_rev=X: Set the base microcode revision of each thread when in debug mode, whereXis an unsigned 32-bit integer. -
dis_ucode_ldr: Disable the microcode loader. -
force_minrev: Enable or disable the microcode minimal revision enforcement for the runtime microcode loader.
-
- nvme.quirks=
[NVME] Provide a list of quirk entries to augment the built-in NVMe quirk list.
Format:
nvme.quirks=<VendorID>:<ProductID>:<quirk_names>-…The vendor ID and product ID are 4-digit hexadecimal numbers. The
quirk_namesfield is a comma-separated list of quirk names. You can prefix a quirk name with^to disable that quirk explicitly.Example:
nvme.quirks=7710:2267:bogus_nid,^identify_cns-9900:7711:broken_msi- rcutorture.gp_cond_exp=
- [KNL] Use conditional or asynchronous update-side expedited-grace-period primitives, if available.
- rcutorture.gp_cond_full=
- [KNL] Use conditional or asynchronous update-side normal-grace-period primitives that also take concurrent expedited grace periods into account, if available.
- rcutorture.gp_cond_exp_full=
- [KNL] Use conditional or asynchronous update-side expedited-grace-period primitives that also take concurrent normal grace periods into account, if available.
- rcutorture.gp_cond_wi=
[KNL] Set the nominal wait interval for normal conditional grace periods, in microseconds. The kernel randomly selects the actual wait interval up to this value with nanosecond granularity.
This parameter controls the wait interval for conditional grace periods that you specify through the
rcutorture.gp_condandrcutorture.gp_cond_fullmodule parameters.Defaults to 16 jiffies; for example, 16,000 microseconds on a system with
HZ=1000.- rcutorture.gp_cond_wi_exp=
[KNL] Set the nominal wait interval for expedited conditional grace periods, in microseconds. The kernel randomly selects the actual wait interval up to this value with nanosecond granularity.
This parameter controls the wait interval for expedited conditional grace periods that you specify through the
rcutorture.gp_cond_expandrcutorture.gp_cond_exp_fullmodule parameters.Defaults to 128 microseconds.
- rcutorture.gp_poll=
- [KNL] Use polled update-side normal-grace-period primitives, if available.
- rcutorture.gp_poll_exp=
- [KNL] Use polled update-side expedited-grace-period primitives, if available.
- rcutorture.gp_poll_full=
- [KNL] Use polled update-side normal-grace-period primitives that also take concurrent expedited grace periods into account, if available.
- rcutorture.gp_poll_exp_full=
- [KNL] Use polled update-side expedited-grace-period primitives that also take concurrent normal grace periods into account, if available.
- rcutorture.gp_poll_wi=
[KNL] Set the nominal wait interval for normal conditional grace periods when using polled update-side primitives, in microseconds. The kernel randomly selects the actual wait interval up to this value with nanosecond granularity.
This parameter controls the wait interval for conditional grace periods that you specify through the
rcutorture.gp_pollandrcutorture.gp_poll_fullmodule parameters.Defaults to 16 jiffies; for example, 16,000 microseconds on a system with
HZ=1000.- rcutorture.gp_poll_wi_exp=
[KNL] Set the nominal wait interval for expedited conditional grace periods when using polled update-side primitives, in microseconds. The kernel randomly selects the actual wait interval up to this value with nanosecond granularity.
This parameter controls the wait interval for expedited conditional grace periods that you specify through the
rcutorture.gp_poll_expandrcutorture.gp_poll_exp_fullmodule parameters.Defaults to 128 microseconds.
- rcutorture.gpwrap_lag=
[KNL] Enable grace-period wrap lag testing in
rcutorture. Set this parameter to false to prevent thegpwraplag test from running.The default value is
true.- rcutorture.gpwrap_lag_gps=
[KNL] Set the number of grace periods to tolerate between the per-CPU RCU data structure (
rdp) and the RCU node (rnp)gp_seqvalues before setting the overflow flag during active wrap-lag testing.The default value is
8.- rcutorture.gpwrap_lag_cycle_mins=
[KNL] Set the total cycle duration for
gpwraplag testing, in minutes. The cycle includes both active and inactive testing periods.The default value is
30minutes.- rcutorture.gpwrap_lag_active_mins=
[KNL] Set the duration, in minutes, during which
gpwraplag is active in each testing cycle. During the active period, the grace-period wrap lag is controlled by the value ofrcutorture.gpwrap_lag_gps.The default value is
5minutes.- rcutorture.preempt_duration=
[KNL] Set the duration, in milliseconds, of preemptions by a high-priority FIFO real-time task.
Set this parameter to
0(the default) to disable the preemption test. The kernel selects CPUs to preempt randomly from the set of CPUs that are online at that moment. Races with CPUs going offline are ignored; in such cases, that preemption attempt is skipped.- rcutorture.preempt_interval=
[KNL] Set the interval, in milliseconds, between preemptions by a high-priority FIFO real-time task. The interval defaults to 1 second.
This delay is driven by an
hrtimerand is fuzzed to avoid unintended synchronizations between preemptions.- rcutorture.reader_flavor=
[KNL] Set a bit mask that indicates which RCU readers to use in
rcutorture.If more than one bit is set,
rcutortureenters readers in order from the lowest-order bit to the highest-order bit and exits readers in the reverse order. For SRCU, the bits have the following meanings:-
0x1- normal readers -
0x2- NMI-safe readers -
0x4- lightweight readers
-
- rcutorture.test_boost_holdoff=
[KNL] Set the holdoff time, in seconds, from the start of a
rcutorturetest to the start of RCU priority-boost testing.The default value is
0, which disables any holdoff period.- tsa=
[X86] Control mitigation for transient scheduler attacks on AMD CPUs.
For additional technical background, search for the document titled
"Technical guidance for mitigating transient scheduler attacks".Values:
-
off: Disable the mitigation. -
on(default): Enable the mitigation. -
user: Mitigate only user-to-kernel transitions. -
vm: Mitigate only guest-to-host transitions.
-
- vmscape=
[X86] Control mitigation for VMscape attacks.
VMscape attacks can leak information from a userspace hypervisor to a guest through speculative side-channel techniques.
Values:
-
off: Disable the mitigation. -
ibpb(default): Use the Indirect Branch Prediction Barrier (IBPB) mitigation. -
force: Force vulnerability detection even on processors that would otherwise be treated as unaffected.
-
4.2. Updated kernel parameters Link kopierenLink in die Zwischenablage kopiert!
- mitigations=
[X86, PPC, S390, ARM64, EARLY] Control optional mitigations for CPU vulnerabilities through curated, architecture-independent options.
The
offoption now also disables thevmscapemitigation on x86:-
off: Disable all optional CPU mitigations. This option improves system performance but can expose users to several CPU vulnerabilities.
The
offsetting is equivalent to the following per-architecture options, if supported:-
vmscape=off: Disable VMscape mitigations on x86 systems in addition to previously documented settings.
On x86, after you specify one of the main mitigation modes (such as
off,auto, orauto,nosmt), you can additionally use attack-vector based controls as described inDocumentation/admin-guide/hw-vuln/attack_vector_controls.rst.-
- rcutree.rcu_normal_wake_from_gp=
[KNL] Reduce the latency of
synchronize_rcu()calls by maintaining an independent list of callers. This mechanism does not interact with regular RCU callbacks because it does not rely on thecall_rcu()orcall_rcu_hurry()paths and applies to normal grace periods only.You can enable the behavior by writing
1to/sys/module/rcutree/parameters/rcu_normal_wake_from_gpor by passingrcutree.rcu_normal_wake_from_gp=1on the kernel command line.By default, this behavior is now enabled when
num_possible_cpus() ⇐ 16, unless you explicitly disable it by passingrcutree.rcu_normal_wake_from_gp=0on the kernel command line.- rcutorture.gp_cond=
[KNL] Use conditional or asynchronous update-side normal-grace-period primitives, if available.
Previously, this option was documented as using conditional or asynchronous update-side primitives without explicitly clarifying that they apply to normal grace periods.
- rh_waived=
Enable waived items in RHEL.
Some specific features or security mitigations can be waived, that is, toggled on or off on demand, in RHEL. However, you should use waivers cautiously, because waiving a mitigation or feature can render a system insecure or even out of scope for support.
Format:
<item-1>,<item-2>,…,<item-n>Use the
rh_waivedparameter to enable all waived items that are listed inDocumentation/admin-guide/rh-waived-features.rst.
4.3. Removed kernel parameters Link kopierenLink in die Zwischenablage kopiert!
- microcode.force_minrev=
[X86] This dedicated parameter for controlling microcode minimal revision enforcement has been removed.
You can now use the
microcode=parameter with theforce_minrevoption to enable or disable minimal revision enforcement for the runtime microcode loader.
4.4. New sysctl parameters Link kopierenLink in die Zwischenablage kopiert!
- core_sort_vma
The core dump facility now supports sorting virtual memory areas (VMAs) by size in the generated core file.
By default, the kernel writes VMAs in address order. When you set
core_sort_vmato1, the kernel writes VMAs from the smallest size to the largest size. This behavior is known to break at leastelfutils, but it can be useful when you work with very large or truncated core dumps where the most useful debugging information resides in smaller VMAs.- net.vsock.ns_mode
Control how AF_VSOCK sockets in a network namespace participate in CID allocation and cross-namespace communication.
This setting is read-only. It reports the current namespace’s mode, which is determined when the namespace is created and cannot be changed afterwards.
Values:
-
global: The namespace shares system-wide CID allocation. Sockets in this namespace can communicate with any VM or socket in any namespace that also uses theglobalmode. Sockets in this namespace cannot reach sockets in namespaces that use thelocalmode. -
local: The namespace uses private CID allocation. Sockets in this namespace can communicate only with VMs or sockets within the same namespace.
The
init_netnamespace always operates in theglobalmode.-
- net.vsock.child_ns_mode
Control the default
ns_modevalue for newly created child network namespaces that use AF_VSOCK.At namespace creation, the kernel initializes
ns_modein the child namespace from the parent namespace’schild_ns_mode. Initially, a namespace’schild_ns_modematches its ownns_mode.Values:
-
global: Child namespaces share system-wide CID allocation. Their VSOCK sockets can communicate with any VM or socket that is reachable from aglobalnamespace. -
local: Child namespaces use private CID allocation. Their VSOCK sockets can communicate only within their own namespace.
The first write to
child_ns_modelocks its value. Later writes that set the same value succeed, but writes that attempt to change the value return-EBUSY.Changing
child_ns_modeaffects only namespaces that the kernel creates after the change. Existing namespaces and their children are not modified.If a namespace runs with
ns_mode=local, it cannot changechild_ns_modetoglobal. Attempts to do so fail with-EPERM.-
4.5. Updated sysctl parameters Link kopierenLink in die Zwischenablage kopiert!
- core_pattern
The
core_patternparameter now supports the%Fspecifier to record the pidfd number in core file names.The following additional format specifier is available:
-
%F: Insert the pidfd number of the crashing task into the core file name.
-