与我本周早些时候提到的 Linux 6.15 Git 内核的大性能回归完全分开,昨天在上游代码库中修复了这个问题,本周在 Linux 6.15 Git 中还发现并修复了另一个重要的性能问题。
Cloudflare 工程师 Frederick Lawler 解决了内核中与“极其繁重的只读工作负载”有关的性能问题。具体工作没有提到,但大概在 Cloudflare 中运行了很多只读服务,但也使其他人受益。幸运的是,这种特定的性能问题仅在使用完整性测量架构 (IMA) 功能时才会显现出来。
Frederick Lawler 在合并到 Linux 6.15 Git 的提交中解释说:
“ima: process_measurement() 不必要地对 MAY_READ
采取 inode_lock()
在 IMA 策略更新时,如果策略中存在度量规则,则会为 ima_policy_flags 设置 IMA_MEASURE,这使得 violation_check
变量始终为 true。再加上 FILE_CHECK 调用的 MAY_READ 上无作,我们始终采用 inode_lock()。对于极其繁重的只读工作负载,这将成为一个性能问题。因此,只有在没有要采取任何行动的情况下,才要防止这种情况。
这个性能修复程序在周日发布的 Linux 6.15-rc4 中及时合并,同时与我昨天提到的不相关的性能回归修复程序合并。Linux 6.15 稳定版应该在 5 月底左右发布。
转自 Linux 6.15 Fixes A Performance Issue For Extremely Heavy Read-Only Workloads – Phoronix