|
|
@@ -5360,12 +5360,12 @@ void *miner_thread(void *userdata)
|
|
|
while (1) {
|
|
|
mythr->work_restart = false;
|
|
|
#ifdef USE_AVALON
|
|
|
+ int i;
|
|
|
struct work *work[AVALON_GET_WORK_COUNT];
|
|
|
- int i = 0;
|
|
|
- while (i < AVALON_GET_WORK_COUNT) {
|
|
|
+
|
|
|
+ for (i = 0; i < AVALON_GET_WORK_COUNT; i++) {
|
|
|
work[i] = get_work(mythr, thr_id);
|
|
|
work[i]->blk.nonce = 0;
|
|
|
- i++;
|
|
|
}
|
|
|
#else
|
|
|
work = get_work(mythr, thr_id);
|
|
|
@@ -5374,13 +5374,13 @@ void *miner_thread(void *userdata)
|
|
|
cgpu->new_work = true;
|
|
|
cgpu->max_hashes = 0;
|
|
|
gettimeofday(&tv_workstart, NULL);
|
|
|
-#ifndef USE_AVALON
|
|
|
- if (api->prepare_work && !api->prepare_work(mythr, work)) {
|
|
|
- applog(LOG_ERR, "work prepare failed, exiting "
|
|
|
- "mining thread %d", thr_id);
|
|
|
- break;
|
|
|
+ for (i = 0; i < AVALON_GET_WORK_COUNT; i++) {
|
|
|
+ if (api->prepare_work && !api->prepare_work(mythr, work[i])) {
|
|
|
+ applog(LOG_ERR, "work prepare failed, exiting "
|
|
|
+ "mining thread %d", thr_id);
|
|
|
+ break;
|
|
|
+ }
|
|
|
}
|
|
|
-#endif
|
|
|
do {
|
|
|
gettimeofday(&tv_start, NULL);
|
|
|
|
|
|
@@ -5501,8 +5501,7 @@ void *miner_thread(void *userdata)
|
|
|
sdiff.tv_sec = sdiff.tv_usec = 0;
|
|
|
#ifdef USE_AVALON
|
|
|
} while (!abandon_work(work[0], &wdiff, cgpu->max_hashes));
|
|
|
- i = 0;
|
|
|
- while (i < AVALON_GET_WORK_COUNT)
|
|
|
+ for (i = 0; i < AVALON_GET_WORK_COUNT; i++)
|
|
|
free_work(work[i++]);
|
|
|
#else
|
|
|
} while (!abandon_work(work, &wdiff, cgpu->max_hashes));
|