Кент Оверстрит (Kent Overstreet), разработчик на файловата система Bcachefs, предложи пачове, които позволяват на ядрото на Linux да работи с файловата система Bcachefs дори след повреждане на значителен обем метаданни, като при необходимост възстановява повредените b-деревья от метаданните в структурите inode и dirent. Промените бяха приети от Линус Торвалдс и включени в днешното тестово обновление на ядрото 6.9-rc3.
Промените осигуряват монтиране на повредени файлови системи и предоставят достъп до всички или почти всички данни в файловата система, засегнати от неотдавнашна грешка, водеща до разрушаване на файловата система. Грешката се проявяваше, когато след обновление на инструментариума се предприемаше, но не завършваше, опит за обновление на структурите на файловата система, след което ядрото със старата реализация на Bcachefs се опитваше да понижи версията на структурите, игнорирайки незавършеното обновление. Подобна ситуация водеше до навлизане в режим
Споменатият пач позволява продължаване на работата дори в подобни случаи. Едно от ограниченията на технологията е, че при наличие на snapshot-ове, b-деревото на snapshot-овете трябва да съществува и да бъде неизправно.
Източник: opennet.ru
