Always reset nonce on RandomX dataset change

Also never get a new job when mining is paused
This commit is contained in:
SChernykh 2024-08-14 14:56:07 +02:00
parent 7e4caa8929
commit 17a52fb418
4 changed files with 10 additions and 3 deletions

View file

@ -359,7 +359,9 @@ void xmrig::CpuWorker<N>::start()
} }
} }
consumeJob(); if (!Nonce::isPaused()) {
consumeJob();
}
} }
} }

View file

@ -158,7 +158,7 @@ void xmrig::CudaWorker::start()
std::this_thread::yield(); std::this_thread::yield();
} }
if (!consumeJob()) { if (isReady() && !consumeJob()) {
return; return;
} }
} }

View file

@ -190,7 +190,7 @@ void xmrig::OclWorker::start()
std::this_thread::yield(); std::this_thread::yield();
} }
if (!consumeJob()) { if (isReady() && !consumeJob()) {
return; return;
} }
} }

View file

@ -576,6 +576,11 @@ void xmrig::Miner::setJob(const Job &job, bool donate)
# ifdef XMRIG_ALGO_RANDOMX # ifdef XMRIG_ALGO_RANDOMX
const bool ready = d_ptr->initRX(); const bool ready = d_ptr->initRX();
// Always reset nonce on RandomX dataset change
if (!ready) {
d_ptr->reset = true;
}
# else # else
constexpr const bool ready = true; constexpr const bool ready = true;
# endif # endif