aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorSChernykh <sergey.v.chernykh@gmail.com>2023-04-27 16:24:15 +0200
committerSChernykh <sergey.v.chernykh@gmail.com>2023-04-27 16:24:15 +0200
commit1d1d5fb74cd21821487007959041cd6bc78de9a6 (patch)
tree4065d180cdbff07273e7f872208de995ee6c43dd /src
parentMerge pull request #8766 (diff)
downloadmonero-1d1d5fb74cd21821487007959041cd6bc78de9a6.tar.xz
Fixed RandomX initialization when mining from scratch
Diffstat (limited to 'src')
-rw-r--r--src/cryptonote_basic/miner.cpp9
1 files changed, 8 insertions, 1 deletions
diff --git a/src/cryptonote_basic/miner.cpp b/src/cryptonote_basic/miner.cpp
index 98f1555b6..71b8f78cc 100644
--- a/src/cryptonote_basic/miner.cpp
+++ b/src/cryptonote_basic/miner.cpp
@@ -523,7 +523,7 @@ namespace cryptonote
bool miner::worker_thread()
{
const uint32_t th_local_index = m_thread_index++; // atomically increment, getting value before increment
- crypto::rx_set_miner_thread(th_local_index, tools::get_max_concurrency());
+ bool rx_set = false;
MLOG_SET_THREAD_NAME(std::string("[miner ") + std::to_string(th_local_index) + "]");
MGINFO("Miner thread was started ["<< th_local_index << "]");
@@ -575,6 +575,13 @@ namespace cryptonote
b.nonce = nonce;
crypto::hash h;
+
+ if ((b.major_version >= RX_BLOCK_VERSION) && !rx_set)
+ {
+ crypto::rx_set_miner_thread(th_local_index, tools::get_max_concurrency());
+ rx_set = true;
+ }
+
m_gbh(b, height, NULL, tools::get_max_concurrency(), h);
if(check_hash(h, local_diff))