Browse Source

Check we haven't staged work while waiting for a curl entry before proceeding.

nfactor-troky
Con Kolivas 12 years ago
parent
commit
b74b54d95b
  1. 13
      cgminer.c

13
cgminer.c

@ -2421,13 +2421,18 @@ retry: @@ -2421,13 +2421,18 @@ retry:
lagging = true;
pool = ret_work->pool = select_pool(lagging);
inc_queued();
if (!ce)
ce = pop_curl_entry(pool);
/* Inc queued count after ce is popped in case there're none
* left and we think we've queued work when we're just waiting
* for curls */
inc_queued();
/* Check that we haven't staged work via other threads while
* waiting for a curl entry */
if (total_staged() >= maxq) {
dec_queued();
free_work(ret_work);
goto out;
}
/* obtain new work from bitcoin via JSON-RPC */
if (!get_upstream_work(ret_work, ce->curl)) {

Loading…
Cancel
Save