From c3fb1bcef52fdf8911bc8423d0455ed593bb89e7 Mon Sep 17 00:00:00 2001 From: Con Kolivas Date: Mon, 10 Dec 2012 15:40:16 +1100 Subject: [PATCH] Revert "Selectively discard all work items if a longpoll or stratum restart is received without a new block to work on." This reverts commit 31f75098b51465c885dc36b49b29b2d82dd216e3. Mistake, set in work_block already. --- cgminer.c | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/cgminer.c b/cgminer.c index 58aeb2da..ca22277a 100644 --- a/cgminer.c +++ b/cgminer.c @@ -3317,14 +3317,14 @@ static void wake_gws(void) mutex_unlock(stgd_lock); } -static void discard_stale(bool all) +static void discard_stale(void) { struct work *work, *tmp; int stale = 0; mutex_lock(stgd_lock); HASH_ITER(hh, staged_work, work, tmp) { - if (all || stale_work(work, false)) { + if (stale_work(work, false)) { HASH_DEL(staged_work, work); discard_work(work); stale++; @@ -3362,7 +3362,7 @@ int restart_wait(unsigned int mstime) return rc; } -static void restart_threads(bool all) +static void restart_threads(void) { struct pool *cp = current_pool(); int i; @@ -3372,7 +3372,7 @@ static void restart_threads(bool all) pool_tset(cp, &cp->lagging); /* Discard staged work that is now stale */ - discard_stale(all); + discard_stale(); for (i = 0; i < mining_threads; i++) thr_info[i].work_restart = true; @@ -3494,13 +3494,13 @@ static bool test_work_current(struct work *work) else applog(LOG_NOTICE, "New block detected on network"); } - restart_threads(false); + restart_threads(); } else if (work->longpoll) { work->work_block = ++work_block; if (work->pool == current_pool()) { applog(LOG_NOTICE, "%sLONGPOLL from pool %d requested work restart", work->gbt ? "GBT " : "", work->pool->pool_no); - restart_threads(true); + restart_threads(); } } work->longpoll = false; @@ -4613,7 +4613,7 @@ static void *stratum_thread(void *userdata) /* Only accept a work restart if this stratum * connection is from the current pool */ if (pool == current_pool()) { - restart_threads(true); + restart_threads(); applog(LOG_NOTICE, "Stratum from pool %d requested work restart", pool->pool_no); } } else @@ -5697,7 +5697,7 @@ static void *watchdog_thread(void __maybe_unused *userdata) sleep(interval); - discard_stale(false); + discard_stale(); hashmeter(-1, &zero_tv, 0);