]> git.apps.os.sepia.ceph.com Git - ceph.git/commit
erasure-code: preload the jerasure plugin variant (sse4,sse3,generic) 2298/head
authorLoic Dachary <loic-201408@dachary.org>
Thu, 21 Aug 2014 12:41:55 +0000 (14:41 +0200)
committerLoic Dachary <loic-201408@dachary.org>
Thu, 21 Aug 2014 12:41:55 +0000 (14:41 +0200)
commit8d7e77b9747f1b3dc3c10d1b0877a4b9c899ba86
tree81b9c6e46c2754f0b941d072e9cec8cf009c762c
parentfdbab46852e74d405b5c747da98564a5866ec8a7
erasure-code: preload the jerasure plugin variant (sse4,sse3,generic)

The preloading of the jerasure plugin ldopen the plugin that is in
charge of selecting the variant optimized for the
CPU (sse4,sse3,generic). The variant plugin itself is not loaded because
it does not happen at load() but when the factory() method is called.

The JerasurePlugin::preload method is modified to call the factory()
method to load jerasure_sse4 or jerasure_sse3 or jerasure_generic as a
side effect.

Indirectly loading another plugin in the factory() method is error prone
and should be moved to the load() method instead. This change should be
done in a separate commit.

http://tracker.ceph.com/issues/9153 Fixes: #9153

Signed-off-by: Loic Dachary <loic-201408@dachary.org>
src/erasure-code/ErasureCodePlugin.cc
src/test/erasure-code/test-erasure-code.sh