Kent Overstreet, vývojář systému souborů Bcachefs, navrhl patche, které umožňují jádru Linux pracovat se systémem souborů Bcachefs i po poškození významného objemu metadata, přičemž je možné rekonstruovat poškozené b-stromy z metadat ze struktur inode a dirent. Změny byly přijaty Linusem Torvaldsem a byly zahrnuty do dnešní testovací aktualizace jádra 6.9-rc3.
Změny zajišťují montování poškozených systémů souborů a poskytují přístup ke všem nebo téměř všem datům v systému souborů, které byly ovlivněny nedávnou chybou vedoucí k zničení systému souborů. Chyba se projevila, když byla po aktualizaci nástrojů pokus o aktualizaci struktur systému souborů zahájena, ale nedokončena, což vedlo k tomu, že jádro se starou implementací Bcachefs se pokusilo o downgrade verze struktur, ignorujíc nedokončenou aktualizaci. Taková situace vedla k 'režimu rozděleného mozku', kdy žádná z operací nemohla být dokončena a struktury b-stromu systému souborů již nebyly konzistentní s reálným obsahem.
Zmiňovaný patch umožňuje pokračovat v práci i v takových případech. Mezi omezeními technologie se uvádí, že při existenci snapshotů b-stromu musí snapshoty existovat a být funkční.
Zdroj: opennet.ru
