From 87c20c39b20ad2d6090badb5203ba5423dc95eed Mon Sep 17 00:00:00 2001 From: Yan Jun Date: Mon, 26 Aug 2019 18:34:50 +0800 Subject: [PATCH] ec/jerasure: save the default m=2 of reed_sol_r6_op in profile save the default value of m to profile so that it could be dumped in command 'ceph osd erasure-code-profile get xxx', which is more useful and friendly to user. Signed-off-by: Yan Jun --- src/erasure-code/jerasure/ErasureCodeJerasure.cc | 7 +++++-- src/erasure-code/jerasure/ErasureCodeJerasure.h | 1 + 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/src/erasure-code/jerasure/ErasureCodeJerasure.cc b/src/erasure-code/jerasure/ErasureCodeJerasure.cc index 1c996582d38aa..5a732c2e6345e 100644 --- a/src/erasure-code/jerasure/ErasureCodeJerasure.cc +++ b/src/erasure-code/jerasure/ErasureCodeJerasure.cc @@ -239,8 +239,11 @@ int ErasureCodeJerasureReedSolomonRAID6::parse(ErasureCodeProfile &profile, ostream *ss) { int err = ErasureCodeJerasure::parse(profile, ss); - profile.erase("m"); - m = 2; + if (m != stoi(DEFAULT_M)) { + *ss << "ReedSolomonRAID6: m=" << m + << " must be 2 for RAID6: revert to 2" << std::endl; + err = -EINVAL; + } if (w != 8 && w != 16 && w != 32) { *ss << "ReedSolomonRAID6: w=" << w << " must be one of {8, 16, 32} : revert to 8 " << std::endl; diff --git a/src/erasure-code/jerasure/ErasureCodeJerasure.h b/src/erasure-code/jerasure/ErasureCodeJerasure.h index 6af798697acba..2272e0aad637b 100644 --- a/src/erasure-code/jerasure/ErasureCodeJerasure.h +++ b/src/erasure-code/jerasure/ErasureCodeJerasure.h @@ -117,6 +117,7 @@ public: matrix(0) { DEFAULT_K = "7"; + DEFAULT_M = "2"; DEFAULT_W = "8"; } ~ErasureCodeJerasureReedSolomonRAID6() override { -- 2.39.5