Fix #6754
closederasure-code: jerasure plugin does not check parameters properly
100%
Description
wrong parameter checks which can make the whole thing SEGV.
All the RAID-6 codes have restrictions on the parameters but they are not correctly enforced for Liberation & Blaum-Roth codes in the CEPH wrapper class ... see text from PDF
"Minimal Density RAID-6 codes are MDS codes based on binary matrices which satisfy a lower-bound on the number of non-zero entries. Unlike Cauchy coding, the bit-matrix elements do not correspond to elements in GF (2 w ). Instead, the bit-matrix itself has the proper MDS property. Minimal Density RAID-6 codes perform faster than Reed-Solomon and Cauchy Reed-Solomon codes for the same parameters. Liberation coding, Liber8tion coding, and Blaum-Roth coding are three examples of this kind of coding that are supported in jerasure.
With each of these codes, m must be equal to two and k must be less than or equal to w. The value of w has restrictions based on the code:
- With Liberation coding, w must be a prime number [Pla08b].
- With Blaum-Roth coding, w + 1 must be a prime number [BR99].
- With Liber8tion coding, w must equal 8 [Pla08a].
Updated by Loïc Dachary about 10 years ago
- Subject changed from jerasure plugin does not check parameters properly to erasure-code: jerasure plugin does not check parameters properly
- Assignee deleted (
Loïc Dachary) - Parent task deleted (
#4929)
Updated by Loïc Dachary over 9 years ago
- Description updated (diff)
- Status changed from New to In Progress
- Assignee set to Loïc Dachary
Updated by Loïc Dachary over 9 years ago
- Description updated (diff)
- Status changed from In Progress to Fix Under Review
Updated by Loïc Dachary over 9 years ago
- Status changed from Fix Under Review to Resolved
- % Done changed from 80 to 100