欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

Red Hat Linux严重Bug将影响基于Haswell架构的服务器

程序员文章站 2022-05-18 13:53:39
...
最近,Azul Systems公司的CTO与联合创始人Gil Tene在GoogleGroups报告了一个十分重要,但鲜为人知的Linux内核补丁,采用英特尔Haswell架构的Linux系统用户和管理员尤其应该关注该问题。特别是基于Red Hat发行版的用户(包括CentOS 6.6以及ScientificLinux6.6),应该立即更新这个补丁。即便是运行在虚拟机中的Linux,如果这个虚拟机是在流行的云平台上(如Azure、Amazon等),它也可能跑在Haswell机器上,打补丁应该是有好处的。
Tene是对该缺陷的描述如下:
这个内核漏洞的影响非常简单:在一些看似不可能的情况下,用户进程会死锁并被挂起。任何一个futex调用等待(即使被正确地唤醒)都有可能永远被阻止执行。就像Java里的Thread.park() 可能会一直阻塞那样,等等。如果足够幸运,你会在dmesg日志中发现soft lockup消息;如果没那么幸运(比如跟我们这样),你将不得不花几个月的人工成本去排查代码中的问题,还有可能一无所获。”
Tene继续解释了这个缺陷代码是如何执行的(最终可以归结到一个遗漏了default情况的switch块)。现在最大的问题是,尽管问题代码已经在2014年1月修复,但是在2014年10月左右,该缺陷又被移回了Red Hat 6.6家族系统中。其他系统包括SLES、Ubuntu、Debian等有可能也被影响了。
这些系统的修复情况现在并不一致,并且有可能被忽略。RedHat用户应该采用RHEL 6.6.z或更新的版本。Tene还指出另一个关键点在于,对于要将哪些东西放入内核,不同的发行版会有不同的选择,这也导致问题的修复情况并不一致。
例如,对于RHEL 7.1而言,“其实上游的3.10内核是没有这个bug的,但RHEL7的内核又不是纯粹的上游版本。不幸的是,RHEL 7.1(就像RHEL6.6那样)在移植的时候把(基于RHEL 7版本)这个bug包含了进去......我认为其他发行版可能也是这么做的。”
对基于RHEL的发行版,Tene提供了一个快速参考列表:
l RHEL 5(包括CentOS5和Scientific Linux 5):所有版本(包括5.11版)都没有问题。
l RHEL 6(包括CentOS6和Scientific Linux 6):从6.0~6.5版都没问题。 但6.6版存在缺陷,而6.6.z版本没有问题。
l RHEL 7(包括CentOS7和Scientific Linux 7):7.1是有缺陷的。并且截至2015年5月13日也没有一个7.x的修复。
尽管在Hacker News上对受影响系统的数量存在一些争议,但它提供了一些环境来检查你的系统是否需要修复。
免费领取LAMP兄弟连原创linux运维工程师视频/细说linux教程,详情咨询官网客服:http://www.lampbrother.net/linux/