从这个网页截图中,我们可以获取到以下关于漏洞的关键信息: 1. 漏洞描述: - 标题:x86/mtrr: Check if fixed MTRRs exist before saving them - 描述:MTRRs(Memory Type Range Registers)有一个过时的固定变体,用于对640K-1MB区域进行精细粒度的缓存控制,该变体使用单独的MSRs(Memory Type Range Registers)。这个固定变体在MTRR能力MSR中有一个单独的能力位。 - 问题:在所有支持MTRR的x86 CPU中,这个单独的能力位被设置,因此mtrr_save_state()函数在访问固定MTRR MSR时没有检查这个能力位。 - 影响:在不支持固定MTRR能力的CPU上,这会导致一个#GP(General Protection Fault)异常。这个异常本身是无害的,因为RDMSR故障被处理为WARN_ON()。 2. 修复措施: - 补丁:补丁修复了这个问题,确保在保存MTRRs之前检查固定MTRR的能力位。 - 作者:Andi Kleen - 签署:Andi Kleen 和 Thomas Gleixner 3. 补丁链接: - 补丁链接 4. 补丁状态: - 状态:已合并到上游(upstream)。 - 补丁大小:2行代码更改。 5. 补丁内容: - 在 文件中,补丁添加了一个检查固定MTRR能力位的条件语句。 通过这些信息,我们可以了解到这个漏洞的背景、影响以及修复措施,这对于理解漏洞的性质和修复过程非常有帮助。