Browse Source

Queue an extra request whenever staged work drops below mining thread count in hash_pop.

nfactor-troky
Con Kolivas 12 years ago
parent
commit
b66e0241f7
  1. 6
      cgminer.c

6
cgminer.c

@ -3784,6 +3784,7 @@ out: @@ -3784,6 +3784,7 @@ out:
static struct work *hash_pop(const struct timespec *abstime)
{
struct work *work = NULL;
bool queue = false;
int rc = 0;
mutex_lock(stgd_lock);
@ -3795,9 +3796,14 @@ static struct work *hash_pop(const struct timespec *abstime) @@ -3795,9 +3796,14 @@ static struct work *hash_pop(const struct timespec *abstime)
HASH_DEL(staged_work, work);
if (work->clone)
--staged_extras;
if (HASH_COUNT(staged_work) < mining_threads)
queue = true;
}
mutex_unlock(stgd_lock);
if (queue)
queue_request(NULL, false);
return work;
}

Loading…
Cancel
Save