]> git.apps.os.sepia.ceph.com Git - ceph.git/commit
erasure-code: Rewrite the encode_chunks interface for all plugins 61804/head
authorJamie Pryde <jamiepry@uk.ibm.com>
Thu, 23 Jan 2025 15:21:27 +0000 (15:21 +0000)
committerAlex Ainscow <aainscow@uk.ibm.com>
Wed, 19 Mar 2025 11:03:56 +0000 (11:03 +0000)
commit6b733e9d0ec5acbcc47cc88ff88ffb328e829db5
tree145a8a835a8689838162a256135ce0bafe5419a1
parent3a1106c5a49415c33b270cc807b4602d578aacd7
erasure-code: Rewrite the encode_chunks interface for all plugins

We have changed the encode_chunks interface to take an in map and an out map.
The in map contains the data shards to be encoded. The out map contains the
empty buffers that the plugin will write the parity data to.
The old non-optimized EC path has been updated to call the new encode_chunks
interface from erasurecode.cc
The new EC optimizations path calls the encode_chunks interface from ECUtils.

Signed-off-by: Jamie Pryde <jamiepry@uk.ibm.com>
Signed-off-by: Alex Ainscow <aainscow@uk.ibm.com>
40 files changed:
src/erasure-code/ErasureCode.cc
src/erasure-code/ErasureCode.h
src/erasure-code/ErasureCodeInterface.h
src/erasure-code/clay/ErasureCodeClay.cc
src/erasure-code/clay/ErasureCodeClay.h
src/erasure-code/isa/ErasureCodeIsa.cc
src/erasure-code/isa/ErasureCodeIsa.h
src/erasure-code/jerasure/ErasureCodeJerasure.cc
src/erasure-code/jerasure/ErasureCodeJerasure.h
src/erasure-code/lrc/ErasureCodeLrc.cc
src/erasure-code/lrc/ErasureCodeLrc.h
src/erasure-code/shec/ErasureCodeShec.cc
src/erasure-code/shec/ErasureCodeShec.h
src/osd/ECBackend.cc
src/osd/ECBackend.h
src/osd/ECBackendL.h
src/osd/ECCommon.cc
src/osd/ECCommonL.cc
src/osd/ECTypes.h
src/osd/ECUtil.cc
src/osd/ECUtil.h
src/osd/ECUtilL.cc
src/osd/ECUtilL.h
src/osd/osd_types.h
src/test/erasure-code/ErasureCodeExample.h
src/test/erasure-code/TestErasureCode.cc
src/test/erasure-code/TestErasureCodeClay.cc
src/test/erasure-code/TestErasureCodeExample.cc
src/test/erasure-code/TestErasureCodeIsa.cc
src/test/erasure-code/TestErasureCodeJerasure.cc
src/test/erasure-code/TestErasureCodeLrc.cc
src/test/erasure-code/TestErasureCodePlugins.cc
src/test/erasure-code/TestErasureCodeShec.cc
src/test/erasure-code/TestErasureCodeShec_all.cc
src/test/erasure-code/TestErasureCodeShec_arguments.cc
src/test/erasure-code/TestErasureCodeShec_thread.cc
src/test/erasure-code/ceph_erasure_code_benchmark.cc
src/test/erasure-code/ceph_erasure_code_benchmark.h
src/test/erasure-code/ceph_erasure_code_non_regression.cc
src/tools/erasure-code/ceph-erasure-code-tool.cc