近日,Linux內核社區經歷了一場風波,原本平靜的6.13版本發布前夕,卻因微軟提交的代碼引發了不小的震動。據悉,這段代碼與ARCH_HAS_EXECMEM_ROX內核配置緊密相關,旨在優化64位AMD和英特爾CPU的性能。
然而,問題出在這段代碼未經x86內核維護者的正式確認就被合并進了Linux 6.13版本中。這一舉動直接破壞了CPU上的控制流完整性(CFI),一個對于系統安全至關重要的功能。CFI通過引入影子堆棧和間接分支目標(IBT),有效抵御了多種高級攻擊手段,確保了程序執行過程中的安全性。
具體來說,微軟的這段代碼在Linux內核的alternative.c文件中造成了混亂,甚至在某些情況下導致了系統崩潰。這一發現引起了x86內核維護者的廣泛關注,其中英特爾的Peter Zijlstra迅速行動,提交了緊急修復方案,試圖恢復與EXECMEM_ROX支持相關的更改。然而,他指出,即便進行了修復,微軟的代碼仍然存在錯誤,需要進一步的審查和完善。
AMD的Borislav Petkov也對這一事件表達了強烈的不滿。他批評道,如此重要的代碼更改,竟然沒有經過任何x86維護者的確認就被合并,這不僅是對Linux內核開發流程的不尊重,更是對系統安全性的極大威脅。他的言論在Linux社區內引起了廣泛的共鳴,進一步加劇了這場風波的緊張氛圍。
在這場風波中,英特爾和AMD的及時介入成為了挽救局面的關鍵。兩家公司的技術專家迅速行動起來,與Linux內核社區的成員們緊密合作,共同尋找解決方案。經過一系列的努力,他們終于成功修復了微軟代碼引發的問題,確保了Linux 6.13版本的順利發布。
盡管這次事件給Linux內核社區帶來了一定的困擾,但也暴露出了當前開發流程中存在的一些問題。未來,Linux社區需要進一步加強代碼審查機制,確保所有提交的代碼都經過嚴格的測試和確認,以避免類似事件的再次發生。同時,這次事件也再次提醒了人們,系統安全性是任何時候都不能忽視的重要問題。