LINUX.ORG.RU
ФорумAdmin

btrfs обкакалась

 


0

2

В чем проблема: на ядре 6.10 btrfs отправляет всю систему в своп при чтении большого количества данных с диска. Я это поймал на ядре 6.10.5, когда делал brfs fi du -s /home/.snapshots/*/snapshot от рута. Причём система в нормальное состояние не возвращается, когда эта операция прекращается, а продолжает тупить. Надо ребутать.

Есть длинное обсуждение на kernel.org, где они там что-то фиксили-фиксили, но недофиксили: https://lore.kernel.org/linux-btrfs/CAL3q7H5zfQNS1qy=jAAZa-7w088Q1K-R7+asj-f++6=N8skWzg@mail.gmail.com/T/
Потом открыли баг: https://bugzilla.kernel.org/show_bug.cgi?id=219121
Говорят, он пофиксен в 6.11-rc4. Но что-то у меня нет в этом уверенности. Откатился на 6.9.9.

Перемещено hobbit из general

★★★★★

Последнее исправление: cetjs2 (всего исправлений: 1)

Вам не надоело? Ну очевидно же, что у нее есть какие-то косяки в дизайне, если через столько лет она по прежнему обсирается. Зачем такое использовать?

Какой-то там русский специалист поливал ее говном – наверное он был прав все таки.

MoldAndLimeHoney
()
Ответ на: комментарий от MoldAndLimeHoney

Какой-то там русский специалист поливал ее говном

Если про Эда, то он, в принципе, всё и всегда поливает говном. Вообще не показатель, короче.

«Хозяйка - &дь, салат - говно, котлеты из конины …» by Эд Шишкин

SkyMaverick ★★★★★
()
Ответ на: комментарий от MoldAndLimeHoney

ext4 недавно портила данные, баг попал даже в LTS-версии ядра. Косяки в дизайне? XFS недавно портила данные. Тоже дизайн хреновый? Btrfs, что характерно, данные не портит, дисковый формат, в отличие от двух других названных, стабилен и настолько совместим в обе стороны, насколько возможно. При этом регулярно вылазит говнокод типа того, что в ОП или того случая, когда бесконечно дефрагментировались файлы нулевого размера, убивая диски. Из этих двух зол я предпочту говнокод, который хотя бы данные не портит, в любой день недели.

anonymous
()

Откатился на 6.9.9

Чисто в качестве идеи: а может на другую FS откатиться? Ну очевидно же, что это далеко не первый и явно не последний раз. Или это специально, чтоб скучно не было?

Вспомнился бородатый анекдот:

Кошка рассказывает своим подругам:
Представляете, вчера иду по соседнему двору, вдруг меня поймали местные коты и изнасиловали. Сегодня снова иду по этому двору - меня опять поймали и изнасиловали. Завтра опять пойду…

CrX ★★★★★
()
Последнее исправление: CrX (всего исправлений: 1)
Ответ на: комментарий от Bfgeshka

Если пользоваться стабильными релизами ядра, то вполне окей. На нестабильных (то есть не LTS с минорной версией больше 10-15) тоже маловероятно столкнуться с проблемами, но шансы есть.

anonymous
()
Ответ на: комментарий от anonymous

Many other projects have CI tests that are required to pass before a new release can ship. If that had been the case for LTP, this regression would have been avoided. What’s more, the problem was reported to affect 6.1.64 during its -rc period, but no action was taken to fix that release. 6.1.64 was released with the problem four days later.

Ахах. Типикал линукс.

ox55ff ★★★★★
()

Раз в неделю что-то случается с btrfs, зачем вы (все) её используете? :D

(для тех кто ей использует специально вылавливать баги и всё такое вопросов нет)

Хотя с другой стороны как ещё улучшать если не перебрать все грабли лбом. Зато потом будет норм =)

LINUX-ORG-RU ★★★★★
()
Последнее исправление: LINUX-ORG-RU (всего исправлений: 1)
Ответ на: комментарий от MoldAndLimeHoney

Может и так, но тут он, похоже, был прав.

Раньше тоже так считал. Но на дистанции создалось впечатление, что это случайное совпадение, ибо btrfs оказалась говном, а Шишкин все поливает им же.

pekmop1024 ★★★★★
()
Ответ на: комментарий от pekmop1024

Речь про btrfs и алгоритм работы утилит типа du. Выполняется она долго. А та что часть btrfs ещё и по особому работает расчитывая не просто место, инкрементируя размер всех файлов, а «немного» сложнее от чего выполняться может на порядок больше

anonymous
()
Ответ на: комментарий от anonymous

Аутентификация этим хэшем — вполне себе гарантия целостности. Только его там по умолчанию нет, а если включить, то это будет печально, как и многие другие вещи в бутербродах из device-mapper и традиционных ФС.

anonymous
()
Ответ на: комментарий от anonymous

Аутентификация этим хэшем — вполне себе гарантия целостности

Аутентификация - это гарантия (твоим словам). Причем это криптографическая «гарантия», которая про «люди не знают обратной функции». Это про незнание, а не про целостность.

Вот например я «знаю» и специально записываю данные, которые имеют коллизии хешей. Какие здесь гарантии?

anonymous
()
Ответ на: комментарий от anonymous

Где же в этом бутерброде контроль целостности данных?

Где-то на уровне dm-crypt. За более чем десять лет ни разу данные не терялись и фс не корраптилась на самых жестких сценариях вроде пропадания питания в режиме «вот те раз, и так каждые три минуты» (забытый файл-сервер как-то простоял в таком режиме все выходные, когда упс заглючило).

pekmop1024 ★★★★★
()
Ответ на: комментарий от pekmop1024

Где-то на уровне dm-crypt

Там этого нет. Есть в dm-integrity, который удваивает запись в полноценном режиме работы (но режим с bitmap не так плох, справедливости ради). В случае повреждения данных на диске dm-crypt не выдаст ошибку I/O, он просто успешно расшифрует мусор.

За более чем десять лет ни разу данные не терялись и фс не корраптилась

У меня тоже, но вот такие вещи в принципе бывают: наткнулся на сбойные сектора на очередном nvme ssd

Плюс такая вещь, как ошибки в оперативной памяти, которые могут испортить данные в файлах. Но здесь уже ни Btrfs, ни ZFS ничего не обещают, хотя в документации Btrfs упоминается, что часть ошибок в RAM она обнаружить сможет. На практике, конечно, никаких гарантий. У меня с посыпавшейся памятью Btrfs успешно записала битые файлы с корректными CRC.

anonymous
()
Ответ на: комментарий от anonymous

Это про незнание, а не про целостность.

Authenticated encryption позволяет понять, корректны ли данные. Были они повреждены случайно или умышленно — значения не имеет.

Вот например я «знаю» и специально записываю данные, которые имеют коллизии хешей.

Удачи в поиске коллизий к какой-нибудь SHA256.

Какие здесь гарантии?

Примерно как с уникальностью UUID — достаточные для конкретной области.

anonymous
()
Ответ на: комментарий от anonymous

Удачи в поиске коллизий к какой-нибудь SHA256.

Допустим, у меня есть два и более блоков данных с однаковым sha256 (не важно как я их получил), как мне сохранить эти данные в «файловой системе поддерживающей целостность на гарантии отсутсвия таких коллизий»? Мне дадут обналичить кошелек Сатоси и обвалить курс?

anonymous
()
Ответ на: комментарий от anonymous

Ну, если твои «два и более блоков данных» имеют одинаковый sha256 учитывая границы экстентов и псевдослучайную соль, которая подмешивается при хэшировании — я думаю, тебе нужно переставать сидеть на LOR и идти стричь бабло, работая предсказателем будущего.

intelfx ★★★★★
()
Ответ на: комментарий от intelfx

То есть, если у меня есть такие «бесценные» данные, то их нельзя сохранить и прочитать(!) в этой файловой системе. Эта файловая система не для «бесценных» даннных, только для «ценных», и ценность данных измеряется не субьектом, а объектом хранящим данные.

И вообще, надо понимать, что мощность множества хешей (даже с солью и прочими приправами) намного меньше мощности возможных данных. С точки зрения теорвера отсутствие коллизий - это очень редкое событие. Вот такие вот «гарантии» - пока везёт.

anonymous
()
Ответ на: комментарий от anonymous

ext4 недавно портила данные
XFS недавно портила данные

————

Btrfs
когда бесконечно дефрагментировались файлы нулевого размера, убивая диски.
убивая диски

————

Из этих двух зол я предпочту говнокод, который хотя бы данные не портит

Ниче так предпочтение. Или данные на убитом диске уже не данные и поэтому этот баг можно не причислять к порче данных?

anc ★★★★★
()
Ответ на: комментарий от anonymous

У тебя нет таких данных, и ни у кого нет. Иди гуляй уже, и на досуге почитай, что такое «соль».

P.S.: Это не Git, эта файловая система не content-addressable. Коллизия хэшей между двумя экстентами, даже если г-дь б-г снизойдёт до земляшки и она случится, абсолютно ни на что не повлияет.

intelfx ★★★★★
()
Последнее исправление: intelfx (всего исправлений: 2)
Ответ на: комментарий от anc

Или данные на убитом диске уже не данные и поэтому этот баг можно не причислять к порче данных?

Можно. На этот случай у тебя есть резервные копии. В случае с порчей данных на ФС без контроля целостности у тебя с большой вероятностью резервные копии уже содержат эти же битые данные.

anonymous
()
Ответ на: комментарий от intelfx

что такое «соль»

Сколько соли надо 4 литровую кастрюлю борща?

Какие объективно измеримые гарантии дает «соление» с sha256, по сравнению, например, c CRC или кодом Рида-Соломона?

anonymous
()