1
0
mirror of https://github.com/xmrig/xmrig.git synced 2026-07-02 15:02:43 -04:00

Compare commits

...

6 Commits

Author SHA1 Message Date
Tony Butler bcdca8a0c9 Merge 8f507b7d09 into 64a0ed413b 2023-11-19 16:36:41 -07:00
xmrig 64a0ed413b Merge pull request #3358 from SChernykh/dev
Zephyr solo mining: handle multiple outputs
2023-11-15 22:36:35 +07:00
SChernykh 0b59b7eb43 Zephyr solo mining: handle multiple outputs 2023-11-15 16:18:05 +01:00
xmrig ae6b10b5a4 Merge pull request #3356 from SChernykh/dev
Updated pricing record size for Zephyr solo mining
2023-11-15 08:27:02 +07:00
SChernykh 705a7eac0c Updated pricing record size for Zephyr solo mining 2023-11-14 13:06:10 +01:00
Tony Butler 8f507b7d09 Fix minor leaks and some unintialized components (valgrind) 2023-07-12 02:06:53 -06:00
4 changed files with 31 additions and 22 deletions
+1 -1
View File
@@ -20,7 +20,7 @@ set(SOURCES_BACKEND_COMMON
src/backend/common/Workers.cpp 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 list(APPEND HEADERS_BACKEND_COMMON
src/backend/common/benchmark/Benchmark.h src/backend/common/benchmark/Benchmark.h
src/backend/common/benchmark/BenchState_test.h src/backend/common/benchmark/BenchState_test.h
+1 -1
View File
@@ -259,7 +259,7 @@ if (WITH_KAWPOW OR WITH_GHOSTRIDER)
endif() endif()
if (WITH_RANDOMX AND WITH_BENCHMARK) if (WITH_BENCHMARK AND (WITH_RANDOMX OR WITH_GHOSTRIDER))
add_definitions(/DXMRIG_FEATURE_BENCHMARK) add_definitions(/DXMRIG_FEATURE_BENCHMARK)
list(APPEND HEADERS_BASE list(APPEND HEADERS_BASE
+24 -18
View File
@@ -198,7 +198,7 @@ bool xmrig::BlockTemplate::parse(bool hashes)
} }
if (m_coin == Coin::ZEPHYR) { if (m_coin == Coin::ZEPHYR) {
uint8_t pricing_record[24]; uint8_t pricing_record[120];
ar(pricing_record); ar(pricing_record);
} }
@@ -225,8 +225,12 @@ bool xmrig::BlockTemplate::parse(bool hashes)
ar(m_height); ar(m_height);
ar(m_numOutputs); ar(m_numOutputs);
const uint64_t expected_outputs = (m_coin == Coin::ZEPHYR) ? 2 : 1; if (m_coin == Coin::ZEPHYR) {
if (m_numOutputs != expected_outputs) { if (m_numOutputs < 2) {
return false;
}
}
else if (m_numOutputs != 1) {
return false; return false;
} }
@@ -252,23 +256,25 @@ bool xmrig::BlockTemplate::parse(bool hashes)
ar.skip(asset_type_len); ar.skip(asset_type_len);
ar(m_viewTag); ar(m_viewTag);
uint64_t amount2; for (uint64_t k = 1; k < m_numOutputs; ++k) {
ar(amount2); uint64_t amount2;
ar(amount2);
uint8_t output_type2; uint8_t output_type2;
ar(output_type2); ar(output_type2);
if (output_type2 != 2) { if (output_type2 != 2) {
return false; return false;
}
Span key2;
ar(key2, kKeySize);
ar(asset_type_len);
ar.skip(asset_type_len);
uint8_t view_tag2;
ar(view_tag2);
} }
Span key2;
ar(key2, kKeySize);
ar(asset_type_len);
ar.skip(asset_type_len);
uint8_t view_tag2;
ar(view_tag2);
} }
else if (m_outputType == 3) { else if (m_outputType == 3) {
ar(m_viewTag); ar(m_viewTag);
+5 -2
View File
@@ -333,8 +333,8 @@ void benchmark()
const CnHash::AlgoVariant* av = Cpu::info()->hasAES() ? av_hw_aes : av_soft_aes; const CnHash::AlgoVariant* av = Cpu::info()->hasAES() ? av_hw_aes : av_soft_aes;
uint8_t buf[80]; uint8_t buf[80] = { 0 };
uint8_t hash[32 * 8]; uint8_t hash[32 * 8] = { 0 };
LOG_VERBOSE("%24s | N | Hashrate", "Algorithm"); LOG_VERBOSE("%24s | N | Hashrate", "Algorithm");
LOG_VERBOSE("-------------------------|-----|-------------"); 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) { if (hwloc_bitmap_weight(helper_cpu_set) > 0) {
hwloc_bitmap_free(main_threads_set);
return new HelperThread(helper_cpu_set, priority, is8MB); return new HelperThread(helper_cpu_set, priority, is8MB);
} }
} }
} }
hwloc_bitmap_free(helper_cpu_set);
hwloc_bitmap_free(main_threads_set);
#endif #endif
return nullptr; return nullptr;