Browse Source

Only set share diff if we've confirmed it's a share first.

nfactor-troky
Con Kolivas 11 years ago
parent
commit
c1aba05506
  1. 12
      cgminer.c

12
cgminer.c

@ -3658,15 +3658,6 @@ static void rebuild_hash(struct work *work)
scrypt_regenhash(work); scrypt_regenhash(work);
else else
regen_hash(work); regen_hash(work);
work->share_diff = share_diff(work);
if (unlikely(work->share_diff >= current_diff)) {
work->block = true;
work->pool->solved++;
found_blocks++;
work->mandatory = true;
applog(LOG_NOTICE, "Found block for pool %d!", work->pool->pool_no);
}
} }
static bool cnx_needed(struct pool *pool); static bool cnx_needed(struct pool *pool);
@ -6045,6 +6036,7 @@ bool submit_nonce(struct thr_info *thr, struct work *work, uint32_t nonce)
cgtime(&tv_work_found); cgtime(&tv_work_found);
*work_nonce = htole32(nonce); *work_nonce = htole32(nonce);
work->share_diff = 0;
/* Do one last check before attempting to submit the work */ /* Do one last check before attempting to submit the work */
rebuild_hash(work); rebuild_hash(work);
@ -6060,6 +6052,8 @@ bool submit_nonce(struct thr_info *thr, struct work *work, uint32_t nonce)
goto out; goto out;
} }
work->share_diff = share_diff(work);
mutex_lock(&stats_lock); mutex_lock(&stats_lock);
total_diff1 += work->device_diff; total_diff1 += work->device_diff;
thr->cgpu->diff1 += work->device_diff; thr->cgpu->diff1 += work->device_diff;

Loading…
Cancel
Save