> Не в защиту ВасянФС, так, справедливости ради: полиномы-то в md такие же, как и в КД-ПЗУ,нет, в том и дело.
> да и история тогда была в том, что чтением-записью жонглировали неаккуратно
нет, там история фееричная, я ее уже разок излагал, не поленюсь повторить - существовала и по сей день доступна в недрах univercity of Tennessee статья, каких-то американца и китайца, описывающая собственно теорию всех современных raid (она, между прочим, забавна тем, что там мимоходом упоминается еще несколько возможных подходов, ни один из которых толком не исследован - эти выбрали код Рида, не утверждая что он лучший - просто до других вариантов руки ни у кого не дошли)
Она сложная (там те самые поля Галуа), ее понимают выпускники мехмата, а выпускники ВМК - не все. Понимать не означает заметить проблему. Peter Anvin сумел ее году этак в 98 прочитать, написать собственно код raid6 для линуксного md.c и, внимание - в 2004м написать детальную инструкцию для программистов, не отягощенных математикой, просто что с чем ксорить! Где-то она там и лежит до сих пор на kernel.org
Дальше смешно: http://web.eecs.utk.edu/~plank/plank/papers/CS-03-504.html это уже и выпускник ВМК поймет. Даты, в особенности! ;-) Ну листик выпал, видимо, при сдаче в печать ;-)
Угадайте, сколько народу успело либо скопипастить код md.c прямо в потроха коммерческих рейд-контроллеров, либо сравнительно-честно воспроизвести с чистого листа, пользуясь статьей?!
Анвин, надо отдать должное, это "написано короста, читать красота" - заметил, и та версия статьи что доступна сейчас (точнее, та что я читал, фиг знает, доступна еще или нет) - граничное условие включает, но это произошло на год позже. А без него матричка-то того-с... как настоящая, только не работает.
А вот у одного автора zfs (ahl@) оказалось таки математическое образование - и он ошибку заметил сам, до того как багнутый алгоритм raidz3 уехал в код (z2 сделан по статье Анвина, как у всех).