Linux 開發(fā)人員討論棄用和刪除 ReiserFS
長期 Linux 內(nèi)核開發(fā)人員 Matthew Wilcox 發(fā)起了一項“是時候刪除 reiserfs 了嗎?”的討論。Wilcox 刪除 ReiserFS 的動機是由于,他正在追求的內(nèi)核基礎(chǔ)設(shè)施的變化,但 ReiserFS 遺留在一定程度上對他的工作造成了阻礙。
Wilcox 指出,除了 Syzbot 的修復(fù)和其 tree-wide 代碼的修改,ReiserFS 在最近幾年幾乎都沒有新動向;至少從 2019 年開始,似乎就沒有任何用戶上報的 bug 被修復(fù)了。
在樹中保留 reiserfs 有一定的代價。 例如,我非常希望刪除 ->write_begin 的"flags"參數(shù)。我們已經(jīng)有了處理 AOP_FLAG_NOFS 的基礎(chǔ)設(shè)施,但 AOP_FLAG_CONT_EXPAND 仍然存在,只被 reiserfs 使用。
翻看過去幾年對 reiserfs 的補丁,有對一些 syzbot 報告和 treewide 修改的修復(fù)。自 2019 年以來,似乎沒有對用戶發(fā)現(xiàn)的 bug 進(jìn)行任何修復(fù)。reiserfs 是否仍然有一個龐大的安裝基礎(chǔ),只是對一個舊的穩(wěn)定文件系統(tǒng)非常滿意? 還是它的所有用戶都已經(jīng)遷移到了新的、令人興奮的、有積極功能開發(fā)的文件系統(tǒng)?
我們以前也刪除過對老舊文件系統(tǒng)的支持(ext, xiafs),所以這并不是沒有先例。不過,雖然我清楚地知道移除 reiserfs 對其他開發(fā)者的好處,但我沒有足夠的信息來衡量用戶的成本。 也許他們對 5.15 支持他們的 reiserfs 文件系統(tǒng)感到滿意,并且可以在 5.15 之后升級內(nèi)核之前遷移到其他文件系統(tǒng)。
除了直接刪除之外,另一種可能性是將內(nèi)核代碼精簡到對 reiserfs 的只讀支持。大多數(shù) reiserfs 的“怪癖”都與寫支持有關(guān),所以這可能是一個有用的方法。 同樣,我不清楚人們是如何使用 reiserfs 的,所以我不知道它是否有用。
根據(jù)介紹,ReiserFS 于 21 年前作為 Linux 內(nèi)核的第一個日志文件系統(tǒng)被引入,并在早期開源文件系統(tǒng)中提供了創(chuàng)新功能。有一段時間,ReiserFS 在 SUSE Linux 上被默認(rèn)使用,并且在 Namesys 時代有著積極的功能開發(fā)。
但自從 ReiserFS 的主要開發(fā)者 Hans Reiser 在 15 年前因謀殺妻子而被定罪后,除了前 Namesys 開發(fā)者 Edward Shishkin 的相關(guān)工作外,ReiserFS(或 Reiser4)已經(jīng)停滯很長一段時間了。雖然 Shishkin 一直在推動 Reiser4/Reiser5 的發(fā)展,但隨著用戶興趣的減少,ReiserFS 的代碼也已基本“腐爛”。且鑒于它與 Hans Reiser 的關(guān)系,似乎沒有公司愿意再參與其中。更何況如今還有了 EXT4、XFS、Btrfs,甚至是 OpenZFS 這些更好的選擇。
而為了大家能夠更理性的討論決策,Wilcox 特意在討論帖的最后進(jìn)行了聲明表示,這是一個純粹的技術(shù)討論,不要涉及相關(guān)人物。在該討論帖的下方,Edward Shishkin 則為 ReiserFS 發(fā)布一個補丁,以擺脫 AOP_FLAG_CONT_EXPAND flag。
不過,一些其他的內(nèi)核開發(fā)者已經(jīng)表現(xiàn)出了對廢棄/刪除該文件系統(tǒng)的意向。按照此前有過的刪除內(nèi)核功能的常見做法,ReiserFS 有可能在實際刪除之前被棄用幾個內(nèi)核版本。
從目前的評論來看,看起來 ReiserFS 可能會在 2022 年被棄用,以便在未來的主線 Linux 內(nèi)核版本中被移除。Dave Chinner 還建議考慮棄用其他未維護(hù)且不符合 2038 年的舊 Linux 文件系統(tǒng)的計劃。
本文轉(zhuǎn)自O(shè)SCHINA
本文標(biāo)題:Linux 開發(fā)人員討論棄用和刪除 ReiserFS
本文地址:https://www.oschina.net/news/184022/linux-deprecation-reiserfs