13.5.3. 防止在热添加内存时触发 OOM Killer


内核需要内存容量来管理热添加的内存,称为 memmap 区域。此区域使用大约 1.6% 内存,例如 16 GB 为 1 TB。默认情况下,内核会从 ZONE_NORMAL 分配它。如果 ZONE_NORMAL 缺少可用内存,则此分配可能会触发 OOM Killer。

从热添加的内存本身分配 memmap 区域可避免耗尽 ZONE_NORMAL。特定的设备,如 Compute Express Link (CXL)设备和标准 Dual Inline Memory Modules (DIMM),支持此功能。

先决条件

  • 您在系统上具有 root 权限。
  • 您的内存硬件支持在设备本身上分配 memmap。如需更多信息,请参阅硬件厂商的文档。

流程

  1. 通过添加以下内核引导选项启用 memmap_on_memory 功能:

    memory_hotplug.memmap_on_memory=1
  2. 重启系统以使更改生效。

验证

  • 验证设置是否已启用:

    # cat /sys/module/memory_hotplug/parameters/memmap_on_memory
    Y
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

關於紅帽

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

让开源更具包容性

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

关于红帽文档

Legal Notice

Theme

© 2026 Red Hat
返回顶部