crypto/qat: fix issues about QAT based Encryption for RGW

update the librares usage and add a namespace before ostream

Fixes: https://tracker.ceph.com/issues/54059
Signed-off-by: Miaomiao Liu <miaomiao.liu@intel.com>
Signed-off-by: Hualong Feng <hualong.feng@intel.com>
This commit is contained in:
Miaomiao Liu 2022-01-14 13:44:15 +08:00
parent 082dcf0a58
commit 6b879a7478
3 changed files with 9 additions and 13 deletions

View File

@ -2,24 +2,19 @@
# QAT wrapper for Ceph
##
# Build QAT driver library first
include(BuildQatDrv)
set(qat_crypto_plugin_srcs
qat_crypto_accel.cc
qat_crypto_plugin.cc
qcccrypto.cc)
add_library(ceph_crypto_qat SHARED ${qat_crypto_plugin_srcs})
add_dependencies(ceph_crypto_qat QatDrv)
target_include_directories(ceph_crypto_qat PRIVATE
${EXTRA_LIBS}
${QatDrv_INCLUDE_DIRS})
add_dependencies(crypto_plugins ceph_crypto_qat)
target_link_libraries(ceph_crypto_qat
${QatDrv_LIBRARIES})
target_link_libraries(ceph_crypto_qat PRIVATE
QatDrv::qat_s
QatDrv::usdm_drv_s)
add_dependencies(crypto_plugins ceph_crypto_qat)
set_target_properties(ceph_crypto_qat PROPERTIES VERSION 1.0.0 SOVERSION 1)
install(TARGETS ceph_crypto_qat DESTINATION ${crypto_plugin_dir})

View File

@ -29,8 +29,7 @@ public:
{}
~QccCryptoPlugin()
{}
virtual int factory(CryptoAccelRef *cs,
ostream *ss)
virtual int factory(CryptoAccelRef *cs, std::ostream *ss)
{
std::lock_guard<std::mutex> l(qat_init);
if (cryptoaccel == nullptr)

View File

@ -4,6 +4,8 @@
#include <pthread.h>
#include "common/debug.h"
#include "include/scope_guard.h"
#include "common/dout.h"
#include "common/errno.h"
// -----------------------------------------------------------------------------
#define dout_context g_ceph_context
@ -11,8 +13,7 @@
#undef dout_prefix
#define dout_prefix _prefix(_dout)
static ostream&
_prefix(std::ostream* _dout)
static std::ostream& _prefix(std::ostream* _dout)
{
return *_dout << "QccCrypto: ";
}
@ -28,6 +29,7 @@ static std::atomic<bool> init_called = { false };
void* QccCrypto::crypt_thread(void *args) {
struct qcc_thread_args *thread_args = (struct qcc_thread_args *)args;
thread_args->qccinstance->do_crypt(thread_args);
return thread_args;
}
void QccCrypto::QccFreeInstance(int entry) {