|
|
@ -1756,9 +1756,8 @@ static void add_submit(ckpool_t *ckp, stratum_instance_t *client, int diff, bool |
|
|
|
stats.unaccounted_rejects += diff; |
|
|
|
stats.unaccounted_rejects += diff; |
|
|
|
mutex_unlock(&stats_lock); |
|
|
|
mutex_unlock(&stats_lock); |
|
|
|
|
|
|
|
|
|
|
|
/* Ignore successive rejects in count if they haven't submitted a valid
|
|
|
|
/* Count only accepted and stale rejects in diff calculation. */ |
|
|
|
* share yet. */ |
|
|
|
if (!valid) |
|
|
|
if (unlikely(!client->ssdc && !valid)) |
|
|
|
|
|
|
|
return; |
|
|
|
return; |
|
|
|
|
|
|
|
|
|
|
|
tv_time(&now_t); |
|
|
|
tv_time(&now_t); |
|
|
@ -2153,7 +2152,7 @@ static json_t *parse_submit(stratum_instance_t *client, json_t *json_msg, |
|
|
|
} |
|
|
|
} |
|
|
|
invalid = false; |
|
|
|
invalid = false; |
|
|
|
out_submit: |
|
|
|
out_submit: |
|
|
|
if (wb->proxy && sdiff >= wdiff) |
|
|
|
if (sdiff >= wdiff) |
|
|
|
submit = true; |
|
|
|
submit = true; |
|
|
|
out_unlock: |
|
|
|
out_unlock: |
|
|
|
ck_runlock(&workbase_lock); |
|
|
|
ck_runlock(&workbase_lock); |
|
|
@ -2189,12 +2188,12 @@ out_unlock: |
|
|
|
|
|
|
|
|
|
|
|
/* Submit share to upstream pool in proxy mode. We submit valid and
|
|
|
|
/* Submit share to upstream pool in proxy mode. We submit valid and
|
|
|
|
* stale shares and filter out the rest. */ |
|
|
|
* stale shares and filter out the rest. */ |
|
|
|
if (submit) { |
|
|
|
if (wb->proxy && submit) { |
|
|
|
LOGINFO("Submitting share upstream: %s", hexhash); |
|
|
|
LOGINFO("Submitting share upstream: %s", hexhash); |
|
|
|
submit_share(client, id, nonce2, ntime, nonce, json_integer_value(json_object_get(json_msg, "id"))); |
|
|
|
submit_share(client, id, nonce2, ntime, nonce, json_integer_value(json_object_get(json_msg, "id"))); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
add_submit(ckp, client, diff, result); |
|
|
|
add_submit(ckp, client, diff, submit); |
|
|
|
|
|
|
|
|
|
|
|
/* Now write to the pool's sharelog. */ |
|
|
|
/* Now write to the pool's sharelog. */ |
|
|
|
val = json_object(); |
|
|
|
val = json_object(); |
|
|
|