diff options
author | psychocrypt <psychocrypt@users.noreply.github.com> | 2017-07-27 21:28:40 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2017-07-27 21:28:40 +0200 |
commit | b64d5851aa857e035c573f4c6ecd7d9ab3cc3d48 (patch) | |
tree | 1ccfaaf59cbfe76846a40ce456b6ba8ef942d25a /minethd.cpp | |
parent | 238a513af7410fa3ddcc86b2adb2d53e2c29b9d1 (diff) | |
parent | c2203be45654c048d5571cc019314bc702e353ff (diff) | |
download | xmr-stak-b64d5851aa857e035c573f4c6ecd7d9ab3cc3d48.zip xmr-stak-b64d5851aa857e035c573f4c6ecd7d9ab3cc3d48.tar.gz |
Merge pull request #254 from fireice-uk/topic-race-fix
Race condition fix
Diffstat (limited to 'minethd.cpp')
-rw-r--r-- | minethd.cpp | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/minethd.cpp b/minethd.cpp index 5c7871d..fac9fb4 100644 --- a/minethd.cpp +++ b/minethd.cpp @@ -161,6 +161,7 @@ minethd::minethd(miner_work& pWork, size_t iNo, bool double_work, bool no_prefet bNoPrefetch = no_prefetch; this->affinity = affinity; + std::lock_guard<std::mutex> lock(work_thd_mtx); if(double_work) oWorkThd = std::thread(&minethd::double_work_main, this); else @@ -363,6 +364,9 @@ minethd::cn_hash_fun minethd::func_selector(bool bHaveAes, bool bNoPrefetch) void minethd::pin_thd_affinity() { + //Lock is needed because we need to use oWorkThd + std::lock_guard<std::mutex> lock(work_thd_mtx); + // pin memory to NUMA node bindMemoryToNUMANode(affinity); |