В свежих версиях ядра Linux обнаружена критическая ошибка, ведущая к краху ext4

в 6:20, , рубрики: ext4, gentoo, linux, баг, патч, файловая система, метки: , , , , ,

Сразу хочу сказать, что большинство пользователей бинарных дистрибутивов данный баг скорее всего не затрагивает. Проблема относится в первую очередь к пользователям gentoo, а так же ко всем другим, кто собирает ядро самостоятельно.

23.10.2012 в коде ядра ветки 3.6.* был обнаружен баг (по ссылке описание и патч, этот баг испраляющий), приводящий к частичному повреждению файловой системы ext4. Появился он в 3.6.2, после чего ошибочный код был портирован в ветки 3.5 и 3.4. В итоге затронуты следующие версии ядра:
3.6.3
3.6.2

3.5.7
(не уверен за предыдущие версии ветки 3.5.*)

3.4.15
3.4.14
(3.4.11 и ниже точно не затронуты)

К счастью данный баг проявляется не постоянно, а только в тех случаях, когда файловая система часто отмонтируется (при регулярных перезагрузках, например, на ноутбуках, которые выключают вместо спящего режима). Что конечно же не умаляет его серьезности.

Суть бага, насколько, я, человек неискушенный в программировании, понял в том, что журнал файловой системы некорректно сохраняется при отмонтировании. Подробнее Вы можете прочитать по ссылке выше.

Чтобы проверить существует ли баг в Вашей системе, наберите uname -r. Если в выводе будут указанные выше версии, и Вы не обновляли ядро с 23.10.2012, Вам стоит срочно обновиться из репозиториев дистрибутива или самостоятельно поставить не затронутую версию ядра. Буду рад, если для статистики в комментариях отпишутся те, кто пользуются бинарными дистрибутивами и у кого версии ядра, содержащие баг. Пожалуйста, не надо писать, если у Вас ядра без этого бага.

Для гентушников, хочу заметить, что сейчас все багнутые версии замаскированы. Последняя стабильная версия gentoo-sources-3.4.9, но так же по слухам содержит баг с ext4 (хоть и не столь критичный), поэтому есть мнение, что стоит размаскировать и использовать gentoo-sources-3.4.11.

Ссылки по теме:
Пост с описанием бага и патчем, испраляющим его, в LKML
Баг в гентушной багзилле

Автор: J_o_k_e_R

Поделиться

* - обязательные к заполнению поля