|
@@ -4370,11 +4370,11 @@ static struct work *hash_pop(const struct timespec *abstime)
|
|
|
return work;
|
|
return work;
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
-static bool reuse_work(struct work *work)
|
|
|
|
|
|
|
+static bool reuse_work(struct work *work, struct pool *pool)
|
|
|
{
|
|
{
|
|
|
- if (work->stratum && !work->pool->idle) {
|
|
|
|
|
|
|
+ if (pool->has_stratum) {
|
|
|
applog(LOG_DEBUG, "Reusing stratum work");
|
|
applog(LOG_DEBUG, "Reusing stratum work");
|
|
|
- gen_stratum_work(work->pool, work);;
|
|
|
|
|
|
|
+ gen_stratum_work(pool, work);;
|
|
|
return true;
|
|
return true;
|
|
|
}
|
|
}
|
|
|
|
|
|
|
@@ -4545,7 +4545,7 @@ static void get_work(struct work *work, struct thr_info *thr, const int thr_id)
|
|
|
retry:
|
|
retry:
|
|
|
pool = current_pool();
|
|
pool = current_pool();
|
|
|
|
|
|
|
|
- if (reuse_work(work))
|
|
|
|
|
|
|
+ if (reuse_work(work, pool))
|
|
|
goto out;
|
|
goto out;
|
|
|
|
|
|
|
|
if (!pool->lagging && !total_staged() && global_queued() >= mining_threads + opt_queue) {
|
|
if (!pool->lagging && !total_staged() && global_queued() >= mining_threads + opt_queue) {
|