From d5fe2cfd7aee2b45c3473c7c3b0341b1cf3aa186 Mon Sep 17 00:00:00 2001 From: Con Kolivas Date: Sun, 11 Sep 2011 10:48:39 +1000 Subject: [PATCH] Flag devices that have never started and don't allow enabling of devices without restarting them. --- main.c | 9 +++++++++ miner.h | 1 + 2 files changed, 10 insertions(+) diff --git a/main.c b/main.c index a8cfc55c..c58d23e8 100644 --- a/main.c +++ b/main.c @@ -3170,6 +3170,9 @@ retry: case LIFE_DEAD: wlog("DEAD reported in %s", checkin); break; + case LIFE_NOSTART: + wlog("Never started"); + break; } wlog("\n"); } @@ -3196,6 +3199,11 @@ retry: if (dev_from_id(i) != selected) continue; thr = &thr_info[i]; + if (thr->cgpu->status != LIFE_WELL) { + wlogprint("Must restart device before enabling it"); + gpu_devices[selected] = false; + goto retry; + } if (opt_debug) applog(LOG_DEBUG, "Pushing ping to thread %d", thr->id); @@ -5460,6 +5468,7 @@ int main (int argc, char *argv[]) free(buf); } gpu_devices[gpu] = false; + cgpu->status = LIFE_NOSTART; continue; } applog(LOG_INFO, "initCl() finished. Found %s", name); diff --git a/miner.h b/miner.h index 0bd78b4e..0567139e 100644 --- a/miner.h +++ b/miner.h @@ -153,6 +153,7 @@ enum alive { LIFE_WELL, LIFE_SICK, LIFE_DEAD, + LIFE_NOSTART }; #ifdef HAVE_ADL