Linus 發(fā)出警告:請勿使用 Linux Kernel 5.12-rc1
上周 Linux Kernel 幾經(jīng)波折終于發(fā)布了 5.12-rc1 版本,不過就在發(fā)布后的第二天,Linus 又立馬向內(nèi)核郵件列表發(fā)出了一封警告郵件,告訴大家不要使用最新的 5.12-rc1 內(nèi)核(尤其是使用 swap 文件來運行的用戶),并要求維護者不要從 5.12-rc1 進行分支,以免將問題帶到未來的版本中。
郵件發(fā)出之前,Linus 就已將公共 git 樹中的 "v5.12-rc1" tag 重命名為 "v5.12-rc1-dontuse",以提醒用戶不要使用。根據(jù) Linus 的解釋,5.12-rc1 版本內(nèi)核嚴(yán)重破壞了對交換文件 (swapfile) 的處理,會導(dǎo)致文件系統(tǒng)被隨機交換數(shù)據(jù)覆蓋,此外還會導(dǎo)致大段的元數(shù)據(jù)被覆蓋。元數(shù)據(jù)的損壞可能會導(dǎo)致整個文件系統(tǒng)無法掛載和使用。
導(dǎo)致此問題的原因是交換文件的讀/寫偏移(swapfile read/write offset)處理失當(dāng),更新后的 v5.12-rc1 代碼會丟失指向交換文件開頭的適當(dāng)偏移量,雖然交換仍會進行,但出現(xiàn)在了文件系統(tǒng)不該交換的地方,并因此釀成災(zāi)難性的后果。
定位了問題后,內(nèi)核開發(fā)者迅速進行了修復(fù),隔天 Linus 就發(fā)布了修復(fù)此問題的 Linux Kernel 5.12-rc2。
目前已可以放心使用 v5.12-rc2。
本文轉(zhuǎn)自O(shè)SCHINA
本文標(biāo)題:Linus 發(fā)出警告:請勿使用 Linux Kernel 5.12-rc1
本文地址:https://www.oschina.net/news/132220/a-warning-about-5-12-rc1