Browse Source

store the next difficulty

windows
elbandi 10 years ago
parent
commit
d0881e82a2
  1. 1
      miner.h
  2. 7
      util.c

1
miner.h

@ -1391,6 +1391,7 @@ struct pool {
unsigned char *coinbase; unsigned char *coinbase;
size_t nonce2_offset; size_t nonce2_offset;
unsigned char header_bin[128]; unsigned char header_bin[128];
double next_diff;
int merkle_offset; int merkle_offset;
struct timeval tv_lastwork; struct timeval tv_lastwork;

7
util.c

@ -1560,6 +1560,7 @@ static bool parse_notify(struct pool *pool, json_t *val)
pool->swork.nbit = nbit; pool->swork.nbit = nbit;
pool->swork.ntime = ntime; pool->swork.ntime = ntime;
pool->swork.clean = clean; pool->swork.clean = clean;
pool->swork.diff = pool->next_diff;
alloc_len = pool->swork.cb_len = cb1_len + pool->n1_len + pool->n2size + cb2_len; alloc_len = pool->swork.cb_len = cb1_len + pool->n1_len + pool->n2size + cb2_len;
pool->nonce2_offset = cb1_len + pool->n1_len; pool->nonce2_offset = cb1_len + pool->n1_len;
@ -1668,8 +1669,8 @@ static bool parse_diff(struct pool *pool, json_t *val)
return false; return false;
cg_wlock(&pool->data_lock); cg_wlock(&pool->data_lock);
old_diff = pool->swork.diff; old_diff = pool->next_diff;
pool->swork.diff = diff; pool->next_diff = diff;
cg_wunlock(&pool->data_lock); cg_wunlock(&pool->data_lock);
if (old_diff != diff) { if (old_diff != diff) {
@ -2560,7 +2561,7 @@ out:
if (!pool->stratum_url) if (!pool->stratum_url)
pool->stratum_url = pool->sockaddr_url; pool->stratum_url = pool->sockaddr_url;
pool->stratum_active = true; pool->stratum_active = true;
pool->swork.diff = 1; pool->next_diff = pool->swork.diff = 1;
if (opt_protocol) { if (opt_protocol) {
applog(LOG_DEBUG, "%s confirmed mining.subscribe with extranonce1 %s extran2size %d", applog(LOG_DEBUG, "%s confirmed mining.subscribe with extranonce1 %s extran2size %d",
get_pool_name(pool), pool->nonce1, pool->n2size); get_pool_name(pool), pool->nonce1, pool->n2size);

Loading…
Cancel
Save