Проблемы с BCache в ядре Linux 4.14 могут привести к повреждению данных

22 ноября 2017 года

Пользователи дистрибутива Gentoo обратили внимание на регрессивное изменение в ядре Linux 4.14, которое может привести к повреждению содержимого файловой системы при использовании механизма BCache для кэширования доступа к медленным жестким дискам на быстрых SSD-накопителях. Исправление уже предложено для ядра Linux и будет включено в выпуск 4.14.2.

Суть проблемы в том, что в ядре 4.14 в системе блочного ввода/вывода (bio) для указания информации о разделах было представлено новое поле bi_partno, вместо того чтобы использовать уже применяемый метод кодирования сведений в поле bi_bdev в структуре bdev-bd_contains. Функция __bio_clone_fast была адаптирована для копирования информации о диске, но некорректно обрабатывала информацию о разделах на нём, что могло привести к повреждению содержимого при использовании BCache.

В зависимости от настроек проблема проявляется выдачей некорректных данных при чтении из раздела BСache, но также отмечаются и случаи невосстановимых повреждений базового раздела после его монтирования в составе BCache. Не исключено, что проблема может проявляться и для других блочных подсистем ядра, использующих вызов __bio_clone_fast.

Источники

править
 
 
Creative Commons
Эта статья содержит материалы из статьи «Проблемы с BCache в ядре Linux 4.14 могут привести к повреждению данных», опубликованной OpenNET и распространяющейся на условиях лицензии Creative Commons Attribution (CC BY) — указание автора, источник и лицензию.
 
Эта статья загружена автоматически ботом NewsBots в архив и ещё не проверялась редакторами Викиновостей.
Любой участник может оформить статью: добавить иллюстрации, викифицировать, заполнить шаблоны и добавить категории.
Любой редактор может снять этот шаблон после оформления и проверки.

Комментарии

Викиновости и Wikimedia Foundation не несут ответственности за любые материалы и точки зрения, находящиеся на странице и в разделе комментариев.