diff --git a/src/backend/common/common.cmake b/src/backend/common/common.cmake index 52a5ee6f1..8a3f2e543 100644 --- a/src/backend/common/common.cmake +++ b/src/backend/common/common.cmake @@ -20,7 +20,7 @@ set(SOURCES_BACKEND_COMMON src/backend/common/Workers.cpp ) -if (WITH_RANDOMX AND WITH_BENCHMARK) +if (WITH_BENCHMARK AND (WITH_RANDOMX OR WITH_GHOSTRIDER)) list(APPEND HEADERS_BACKEND_COMMON src/backend/common/benchmark/Benchmark.h src/backend/common/benchmark/BenchState_test.h diff --git a/src/base/base.cmake b/src/base/base.cmake index 0f4f87255..63675875f 100644 --- a/src/base/base.cmake +++ b/src/base/base.cmake @@ -259,7 +259,7 @@ if (WITH_KAWPOW OR WITH_GHOSTRIDER) endif() -if (WITH_RANDOMX AND WITH_BENCHMARK) +if (WITH_BENCHMARK AND (WITH_RANDOMX OR WITH_GHOSTRIDER)) add_definitions(/DXMRIG_FEATURE_BENCHMARK) list(APPEND HEADERS_BASE diff --git a/src/crypto/ghostrider/ghostrider.cpp b/src/crypto/ghostrider/ghostrider.cpp index 25bb44e74..c0634dab8 100644 --- a/src/crypto/ghostrider/ghostrider.cpp +++ b/src/crypto/ghostrider/ghostrider.cpp @@ -333,8 +333,8 @@ void benchmark() const CnHash::AlgoVariant* av = Cpu::info()->hasAES() ? av_hw_aes : av_soft_aes; - uint8_t buf[80]; - uint8_t hash[32 * 8]; + uint8_t buf[80] = { 0 }; + uint8_t hash[32 * 8] = { 0 }; LOG_VERBOSE("%24s | N | Hashrate", "Algorithm"); LOG_VERBOSE("-------------------------|-----|-------------"); @@ -540,10 +540,13 @@ HelperThread* create_helper_thread(int64_t cpu_index, int priority, const std::v }); if (hwloc_bitmap_weight(helper_cpu_set) > 0) { + hwloc_bitmap_free(main_threads_set); return new HelperThread(helper_cpu_set, priority, is8MB); } } } + hwloc_bitmap_free(helper_cpu_set); + hwloc_bitmap_free(main_threads_set); #endif return nullptr;