第 4 章 对外部内核参数的重要更改


本章为系统管理员提供了与 Red Hat Enterprise Linux 10.0 一起发布的内核中重要变化的总结。这些更改可能包括,例如,添加或更新的 proc 条目、sysctlsysfs 默认值、引导参数、内核配置选项或任何明显的行为更改。

新内核参数

accept_memory=

[MM]

值:

lazy(默认)
默认情况下,惰性接受未接受的内存,以避免较长的引导时间。lazy 选项会添加一些运行时开销,直到所有内存最终被接受为止。在大多数情况下,开销可以忽略不计。
eager
对于某些工作负载或用于调试目的,您可以使用 accept_memory=eager 来在启动过程中接受所有内存。

arm64.nomops

[ARM64]

无条件禁用 Memory Copy 和 Memory Set 指令支持。

cgroup_favordynmods=

[KNL]

启用或禁用 favordynmods

值:

  • true
  • false

默认为 CONFIG_CGROUP_FAVOR_DYNMODS 的值。

early_page_ext

[KNL]

page_ext 初始化强制到早期阶段,以覆盖早期的引导分配。

请注意,作为副作用,可能会禁用一些优化来实现这一点:例如,禁用并行内存初始化。因此,引导过程可能需要更长的时间,特别是在有大量内存的系统上。

可以通过 CONFIG_PAGE_EXTENSION=y 提供。

fw_devlink.sync_state=

[KNL]

当可以探测的所有设备都完成探测时,此参数控制使用尚未收到 sync_state () 调用的设备做什么。

值:

strict(默认)
继续等待消费者成功探测。
timeout
deferred_probe_timeout 已到期或被 late_initcall()(如果 CONFIG_MODULESfalse )调用后,放弃等待消费者,并对任何还没有收到其 sync_state() 的设备调用 sync_state()

ia32_emulation=

[X86-64]

值:

true
允许加载 32 位程序,并执行 32 位系统调用,实质上在引导时覆盖 IA32_EMULATION_DEFAULT_DISABLED
false
无条件禁用 IA32 模拟。

kunit.enable=

[KUNIT]

启用执行 KUnit 测试。要求将 CONFIG_KUNIT 设置为完全启用。

您可以使用 KUNIT_DEFAULT_ENABLED 覆盖默认值。

默认值为 1(启用)。

mtrr=debug

[X86]

在引导时启用打印与 MTRR 寄存器相关的调试信息。

rcupdate.rcu_cpu_stall_cputime=

[KNL]

提供抽样期间内对 CPU 时间及中断和任务的计数的统计。对于多个连续的 RCU 停滞,所有抽样周期都在第一个 RCU 停滞超时的一半开始。

rcupdate.rcu_exp_stall_task_details=

[KNL]

在加速的 RCU CPU 停滞警告期间,打印阻止当前加速的 RCU 宽限期的任何任务的堆栈转储。

spec_rstack_overflow=

[X86]

控制 AMD Zen CPU 上的 RAS 溢出缓解。

值:

off
禁用缓解
microcode
仅启用微码缓解。
safe-ret(默认)
启用仅软件安全 RET 缓解。
ibpb
通过对内核条目发出 IBPB 来启用缓解。
ibpb-vmexit
仅在 VMEXIT 上发出 IBPB。这个缓解特定于云环境。

workqueue.unbound_cpus=

[KNL,SMP]

指定来约束要在未绑定工作队列中使用的一个或一些 CPU 。

值 :CPU 的一个列表。

默认情况下,所有在线 CPU 都对未绑定工作队列可用。

更新的内核参数

amd_iommu=

[HW, X86-64]

将参数传递给系统中的 AMD IOMMU 驱动程序。

值:

fullflush
已弃用,等同于 iommu.strict=1
off
不要初始化系统中发现的任何 AMD IOMMU。
force_isolation
为所有设备强制进行设备隔离。不再允许 IOMMU 驱动程序根据需要解除隔离要求。此选项不会覆盖 iommu=pt
force_enable
在启用了 IOMMU 且已知有 bug 的平台上强制启用 IOMMU。请谨慎使用这个选项。
New:pgtbl_v1 (默认)
对 DMA-API 使用版本 1 页表。
New:pgtbl_v2
对 DMA-API 使用版本 2 页表。
New: irtcachedis
禁用中断重新映射表(IRT)缓存。

nosmt

[KNL, PPC, S390]

禁用对称多线程(SMT)。等同于 smt=1

[KNL, X86, PPC]

禁用对称多线程(SMT)。

nosmt=force
强制禁用 SMT。无法使用 sysfs 控制文件撤销。

page_reporting.page_reporting_order=

[KNL]

报告顺序的最小页。

值 :整数。

调整报告顺序的最小页。

New: 在超过 MAX_ORDER 时,页报告被禁用。

tsc=

禁用 TSC 的时钟源稳定性检查。

值:

[x86] reliable
将 tsc 时钟源标记为可靠。这在运行时禁用了时钟源验证,并在引导时完成了稳定性检查。用于对较旧的硬件和在虚拟化环境中启用高分辨率计时器模式。
[x86] noirqtime
不要使用 TSC 来做 irq 核算。用来在任何 RDTSC 较慢的平台上运行时间禁用 IRQ_TIME_ACCOUNTING,这个核算可能会增加开销。
[x86] unstable
将 TSC 时钟源标记为不稳定。这在启动时将 TSC 标记为无条件不稳定,并在 TSC watchdog 注意到后,避免任何进一步摇摆。
[x86] nowatchdog
禁用时钟源 watchdog。在具有严格延迟要求的情况下使用,其中不接受来自 时钟源 watchdog 的中断。
[x86] recalibrate
在系统上对 HW 计时器(HPET 或 PM 计时器)重新校准,其 TSC 频率是从使用 MSR 或 CPUID (0x15)的 HW 或 FW 获取的。如果差别超过 500 ppm,则警告。
New: [x86] watchdog

使用 TSC 作为 watchdog 时钟源,使用它来检查其他 HW 计时器(HPET 或 PM 计时器),但仅在 TSC 被认为值得信任的系统上。

早期的 tsc=nowatchdog 抑制了这个。后期的 tsc=nowatchdog 覆盖了这个。控制台消息标记任何此类抑制或覆盖。

usbcore.authorized_default=

[USB]

默认的 USB 设备授权。

值:

New: -1 (默认)
授权了(与 1 相同)。
0
未授权。
1
授权了。
2
如果设备连接到内部端口,则授权。

删除的内核参数

  • cpu0_hotplug
  • sysfs.deprecated

新的 sysctl 参数

io_uring_group

值:

1
进程必须是特权的(CAP_SYS_ADMIN),或者在 io_uring_group 组中,以创建一个 io_uring 实例。
-1 (默认)
只有具有 CAP_SYS_ADMIN 功能的进程才能创建 io_uring 实例。

numa_balancing_promote_rate_limit_MBps

不同内存类型之间过高的提升或降级吞吐量可能会损害应用程序延迟。您可以使用此参数来对提升吞吐量进行速率限制。每节点的最大提升吞吐量(以 MB/s 为单位)被限制为不超过设置值。

一个经验法则是将其设置为比 PMEM 节点写带宽的 1/10 小。

更新了 sysctl 参数

io_uring_disabled

防止所有进程创建新的 io_uring 实例。启用这个会缩小内核的攻击面。

值:

New: 0
所有进程都可以正常创建 io_uring 实例。
New: 1

对于不在 io_uring_group 组中的非特权进程,io_uring 创建被禁用。io_uring_setup() 失败,并显示 -EPERM。仍可使用现有的 io_uring 实例。

如需更多信息,请参阅 io_uring_group 的文档。

New: 2(默认)
对所有进程,io_uring 创建被禁用。io_uring_setup() 总是失败,并显示 -EPERM 。仍可使用现有的 io_uring 实例。
返回顶部
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。 了解我们当前的更新.

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

Theme

© 2025 Red Hat