From 84e47f3e82f48e9d363369136711c76b403713c9 Mon Sep 17 00:00:00 2001 From: Dan Mick Date: Wed, 3 May 2017 20:17:32 -0700 Subject: [PATCH] compressor/zlib: fix plugin for non-Intel arches unittest_compressor was failing on arm64 because the zlib compressor was never initialized, even though it works fine in non-isal mode Signed-off-by: Dan Mick --- src/compressor/zlib/CompressionPluginZlib.h | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/src/compressor/zlib/CompressionPluginZlib.h b/src/compressor/zlib/CompressionPluginZlib.h index 5716e417d22..0aa641f8bb6 100644 --- a/src/compressor/zlib/CompressionPluginZlib.h +++ b/src/compressor/zlib/CompressionPluginZlib.h @@ -35,19 +35,18 @@ public: int factory(CompressorRef *cs, std::ostream *ss) override { + bool isal = false; #if defined(__i386__) || defined(__x86_64__) - bool isal; + // other arches or lack of support result in isal = false if (cct->_conf->compressor_zlib_isal) { ceph_arch_probe(); isal = (ceph_arch_intel_pclmul && ceph_arch_intel_sse41); - } else { - isal = false; } +#endif if (compressor == 0 || has_isal != isal) { compressor = std::make_shared(isal); has_isal = isal; } -#endif *cs = compressor; return 0; } -- 2.39.5