Merge branch 'master' of https://github.com/pshep/cgminer.git
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98
diff --git a/cgminer.c b/cgminer.c
index 0d154f4..0fec0aa 100644
--- a/cgminer.c
+++ b/cgminer.c
@@ -4353,13 +4353,10 @@ static void *watchdog_thread(void __maybe_unused *userdata)
enum dev_enable *denable;
int gpu;
char dev_str[8];
-
+
if (cgpu->api->get_stats)
cgpu->api->get_stats(cgpu);
- /* Use only one thread per device to determine if the GPU is healthy */
- if (i >= nDevs)
- break;
gpu = thr->cgpu->device_id;
denable = &cgpu->deven;
sprintf(dev_str, "%s%d", cgpu->api->name, gpu);
diff --git a/driver-bitforce.c b/driver-bitforce.c
index dc8fa6e..a02000e 100644
--- a/driver-bitforce.c
+++ b/driver-bitforce.c
@@ -39,18 +39,15 @@ static void BFgets(char *buf, size_t bufLen, int fd)
buf[0] = '\0';
}
-static ssize_t BFwrite2(int fd, const void *buf, ssize_t bufLen)
+static ssize_t BFwrite(int fd, const void *buf, ssize_t bufLen)
{
- return write(fd, buf, bufLen);
+ if ((bufLen) != write(fd, buf, bufLen)) {
+ applog(LOG_ERR, "BFL: Error writing: %s", buf);
+ return 0;
+ } else
+ return bufLen;
}
-#define BFwrite(fd, buf, bufLen) do { \
- if ((bufLen) != BFwrite2(fd, buf, bufLen)) { \
- applog(LOG_ERR, "BFL: Error writing (" #buf ")"); \
- return 0; \
- } \
-} while(0)
-
#define BFclose(fd) close(fd)
static bool bitforce_detect_one(const char *devpath)
@@ -83,6 +80,7 @@ static bool bitforce_detect_one(const char *devpath)
bitforce->deven = DEV_ENABLED;
bitforce->threads = 1;
bitforce->sleep_ms = BITFORCE_SLEEP_MS;
+ bitforce->kname = __FILE__;
if (likely((!memcmp(pdevbuf, ">>>ID: ", 7)) && (s = strstr(pdevbuf + 3, ">>>"))))
{
s[0] = '\0';
@@ -138,7 +136,7 @@ static bool bitforce_thread_prepare(struct thr_info *thr)
return true;
}
-static bool bitforce_init(struct cgpu_info *bitforce)
+void bitforce_init(struct cgpu_info *bitforce)
{
int fdDev = bitforce->device_fd;
char *devpath = bitforce->device_path;
@@ -155,7 +153,7 @@ static bool bitforce_init(struct cgpu_info *bitforce)
fdDev = BFopen(devpath);
if (unlikely(fdDev == -1)) {
applog(LOG_ERR, "BFL%i: Failed to open %s", bitforce->device_id, devpath);
- return false;
+ return;
}
bitforce->device_fd = fdDev;
@@ -167,12 +165,12 @@ static bool bitforce_init(struct cgpu_info *bitforce)
if (unlikely(!pdevbuf[0])) {
applog(LOG_ERR, "BFL%i: Error reading (ZGX)", bitforce->device_id);
- return false;
+ return;
}
if (unlikely(!strstr(pdevbuf, "SHA256"))) {
applog(LOG_ERR, "BFL%i: Didn't recognise BitForce on %s", bitforce->device_id, devpath);
- return false;
+ return;
}
if (likely((!memcmp(pdevbuf, ">>>ID: ", 7)) && (s = strstr(pdevbuf + 3, ">>>"))))
@@ -180,8 +178,6 @@ static bool bitforce_init(struct cgpu_info *bitforce)
s[0] = '\0';
bitforce->name = strdup(pdevbuf + 7);
}
-
- return true;
}
static bool bitforce_get_temp(struct cgpu_info *bitforce)