Linux 5.15將修復此前的補丁讓軟盤驅動器設備出錯的問題
靠近年初的時候,Linux內核的軟盤驅動上進行了一些久違的工作,而且半年後人們發現,今年早些時候的工作反倒使Linux內核的軟盤處理退步了。 現在,Linux 5.15即將推出一個修復方案。
自從今年早些時候對軟盤驅動程式進行修改後,該驅動程式繼續發揮作用,但它無意地改變了一些軟盤處理代碼:之前帶有O_NDELAY標誌的內核將允許打開一個軟盤設備,即使沒有插入磁碟的情況下。 更新後的Linux內核如果在沒有插入介質/磁碟的情況下打開軟盤設備,將產生一個錯誤。 此外,它還破壞了打開有寫保護的軟盤的功能。
如果Linux 5.14的發佈順利的話,Linux 5.15的合併視窗很可能在今晚開啟,排隊的軟盤驅動的修復,作為一個遲來的添加塊應該會被加入。 對於這些回歸的修復沒有什麼值得關注的地方,只是恢復了軟盤代碼中圍繞O_NDELAY的早期補丁。
今年早些時候的軟盤補丁最初是在Linux 5.12時期合併的,但也被回傳到之前的穩定版系列,包括Linux 5.10 LTS,所以5.15的這個新補丁最終也可能被回傳到穩定/LTS內核中。
Linux 5.15的軟盤修正可以通過這個PR找到:
https://lore.kernel.org/lkml/388418f4-2b9a-6fed-836c-a004369dc7c0@linux.com/
鑒於現在內核開發者中實際使用軟盤的情況非常少,開發者Denis Efremov也在努力為軟盤驅動添加自我測試,以防止這種用戶空間的破壞在未來再次發生。