Browse Source

Add sanity checking to make sure we don't make sleep_ms less than 0 in bitforce.

nfactor-troky
Con Kolivas 13 years ago
parent
commit
b8484956e6
  1. 6
      driver-bitforce.c

6
driver-bitforce.c

@ -376,8 +376,12 @@ static uint64_t bitforce_get_result(struct thr_info *thr, struct work *work) @@ -376,8 +376,12 @@ static uint64_t bitforce_get_result(struct thr_info *thr, struct work *work)
delay_time_ms = bitforce->sleep_ms;
if (bitforce->wait_ms > bitforce->sleep_ms + (WORK_CHECK_INTERVAL_MS * 2))
bitforce->sleep_ms += (bitforce->wait_ms - bitforce->sleep_ms) / 2;
else if (bitforce->wait_ms == bitforce->sleep_ms)
else if (bitforce->wait_ms == bitforce->sleep_ms) {
if (bitforce->sleep_ms > WORK_CHECK_INTERVAL_MS)
bitforce->sleep_ms -= WORK_CHECK_INTERVAL_MS;
else if (bitforce->sleep_ms > BITFORCE_CHECK_INTERVAL_MS)
bitforce->sleep_ms -= BITFORCE_CHECK_INTERVAL_MS;
}
if (delay_time_ms != bitforce->sleep_ms)
applog(LOG_DEBUG, "BFL%i: Wait time changed to: %d", bitforce->device_id, bitforce->sleep_ms, bitforce->wait_ms);

Loading…
Cancel
Save