【TechWeb】12月31日消息,近日,騰訊雲操作系統(TencentOS)內核團隊在Linux社區提交的兩項重要改進方案成功解決了近三年來困擾一線廠商的關鍵內核bug。這一方案得到Linux創始人的點贊。
2021年,Linux 內核文件系統中逐步開啓了名爲 Large Folio 的新特性,目的是提升文件讀寫性能。理論上,這個特性能讓文件系統更快、更高效,但現實卻存在bug。
該bug只有高併發環境下才有一定概率偶發,復現條件極爲苛刻。儘管較難觸發,但其潛在風險仍然讓社區和各大廠商感到不安。兩年多時間裏,Linux社區各個廠商都沒有找到問題線索。
今年4月,騰訊雲的操作系統內核團隊在一次性能優化中,發現了問題的根源——Linux 內核的Page Cache 與 Xarray 的交互存在問題。這是一個負責緩存索引管理的關鍵模塊,但索引更新的部分邏輯過於複雜,在高併發環境下容易出錯,直接引發數據指針錯亂。
找到問題後,騰訊雲方面提交了兩項關鍵優化:
1.優化索引查詢: 將 XArray 的多次冗餘查詢簡化爲單次操作,大幅降低複雜度。
2.提升併發穩定性:針對高併發場景,重新梳理處理邏輯,確保指針分配準確,杜絕錯亂問題。
這一優化方案不僅修復了數據損壞的問題,還提升了操作系統的性能。這些改動被Linux社區認爲是最佳的修復方案,並被加入到最新的操作系統版本中,同時得到了Linux創始人的點贊。