Linux 的 32 位内核自 Meltdown 以来一直有问题

afterer
 afterer
发布于 2019年07月29日
收藏 4

Linux 内核的 x86 32 位支持已经开始出现一些轻微的问题。大多数内核开发人员不再积极测试 x86-32,发行版供应商也开始放弃对 32 位的支持。其最新例子是,自 Meltdown 漏洞缓解措施以来,在过去一年中,出现在主线内核中的一些错误的、未定义的行为功能。

英特尔的 Meltdown 漏洞公布几个月后( x86_64 被缓解),Linux KPTI 支持 x86 32 位以试图解决这个问题(从 1 月份的公开到 7 月份的主流就绪),但事实证明,它结果暴露了一个 32 的错误。

内核页表隔离支持暴露了 x86 32 位上的 I/O TLB 映射问题。该原因是内核中未定义的行为,导致数据损坏、内核 Oopes/Panics 和自发重新启动。

据报道,KPTI 在 32 位上随机锁定或重新启动的错误报告至少可以追溯到去年 12 月。现在,Linux 5.3 Git 在 5.3-Rc2 标记之前就有了修复。

内核的 vmalloc 代码现在正在积极同步取消对系统中所有页表的映射,然后再重用这些区域,这将解决过去一年一直存在于崩溃 x86-32 内核上的 32 位未定义行为。这个补丁将用于 Linux5.3-Rc2,并可能会在短时间内移植到稳定的系列中。

来源:phoronix

本站文章除注明转载外,均为本站原创或编译。欢迎任何形式的转载,但请务必注明出处,尊重他人劳动共创开源社区。
转载请注明:文章转载自 OSCHINA 社区 [http://www.oschina.net]
本文标题:Linux 的 32 位内核自 Meltdown 以来一直有问题
加载中
返回顶部
顶部