mirror of
https://github.com/GOSTSec/ccminer
synced 2025-01-10 14:57:53 +00:00
windows: return to normal priority, fix json decref
the jansson error seems only seen in windows debug mode
This commit is contained in:
parent
8b1137d5ec
commit
35cc5908ee
23
ccminer.cpp
23
ccminer.cpp
@ -793,7 +793,7 @@ static bool get_mininginfo(CURL *curl, struct work *work)
|
||||
if (!val && curl_err == -1) {
|
||||
allow_mininginfo = false;
|
||||
if (opt_debug) {
|
||||
applog(LOG_DEBUG, "getinfo not supported");
|
||||
applog(LOG_DEBUG, "getmininginfo not supported");
|
||||
}
|
||||
return false;
|
||||
} else {
|
||||
@ -805,20 +805,16 @@ static bool get_mininginfo(CURL *curl, struct work *work)
|
||||
json_t *key = json_object_get(res, "difficulty");
|
||||
if (key && json_is_real(key)) {
|
||||
global_diff = json_real_value(key);
|
||||
json_decref(key);
|
||||
}
|
||||
key = json_object_get(res, "networkhashps");
|
||||
if (key && json_is_integer(key)) {
|
||||
net_hashrate = json_integer_value(key);
|
||||
json_decref(key);
|
||||
}
|
||||
key = json_object_get(res, "blocks");
|
||||
if (key && json_is_integer(key)) {
|
||||
net_blocks = json_integer_value(key);
|
||||
json_decref(key);
|
||||
}
|
||||
}
|
||||
json_decref(res);
|
||||
}
|
||||
json_decref(val);
|
||||
return true;
|
||||
@ -1168,7 +1164,7 @@ static void *miner_thread(void *userdata)
|
||||
struct work work;
|
||||
uint64_t loopcnt = 0;
|
||||
uint32_t max_nonce;
|
||||
uint32_t end_nonce = 0xffffffffU / opt_n_threads * (thr_id + 1) - (thr_id + 1);
|
||||
uint32_t end_nonce = UINT32_MAX / opt_n_threads * (thr_id + 1) - (thr_id + 1);
|
||||
bool work_done = false;
|
||||
bool extrajob = false;
|
||||
char s[16];
|
||||
@ -1176,16 +1172,10 @@ static void *miner_thread(void *userdata)
|
||||
|
||||
memset(&work, 0, sizeof(work)); // prevent work from being used uninitialized
|
||||
|
||||
/* Set worker threads to nice 19 and then preferentially to SCHED_IDLE
|
||||
* and if that fails, then SCHED_BATCH. No need for this to be an
|
||||
* error if it fails */
|
||||
if (opt_benchmark) {
|
||||
setpriority(PRIO_PROCESS, 0, -1);
|
||||
drop_policy();
|
||||
} else {
|
||||
int prio = 3; // default for ccminer is above normal
|
||||
if (opt_priority > 0) {
|
||||
int prio = 2; // default to normal
|
||||
#ifndef WIN32
|
||||
prio = -1;
|
||||
prio = 0;
|
||||
// note: different behavior on linux (-19 to 19)
|
||||
switch (opt_priority) {
|
||||
case 0:
|
||||
@ -2436,6 +2426,9 @@ int main(int argc, char *argv[])
|
||||
case 1:
|
||||
prio = BELOW_NORMAL_PRIORITY_CLASS;
|
||||
break;
|
||||
case 2:
|
||||
prio = NORMAL_PRIORITY_CLASS;
|
||||
break;
|
||||
case 3:
|
||||
prio = ABOVE_NORMAL_PRIORITY_CLASS;
|
||||
break;
|
||||
|
8
util.cpp
8
util.cpp
@ -522,16 +522,15 @@ json_t *json_rpc_call(CURL *curl, const char *url,
|
||||
|
||||
if (!res_val || json_is_null(res_val) ||
|
||||
(err_val && !json_is_null(err_val))) {
|
||||
char *s;
|
||||
char *s = NULL;
|
||||
|
||||
if (err_val) {
|
||||
s = json_dumps(err_val, 0);
|
||||
json_t *msg = json_object_get(err_val, "message");
|
||||
json_t *err_code = json_object_get(err_val, "code");
|
||||
if (curl_err && json_integer_value(err_code))
|
||||
*curl_err = (int) json_integer_value(err_code);
|
||||
json_decref(err_code);
|
||||
|
||||
s = json_dumps(err_val, 0);
|
||||
if (json_is_string(msg)) {
|
||||
free(s);
|
||||
s = strdup(json_string_value(msg));
|
||||
@ -546,7 +545,8 @@ json_t *json_rpc_call(CURL *curl, const char *url,
|
||||
else
|
||||
s = strdup("(unknown reason)");
|
||||
|
||||
applog(LOG_ERR, "JSON-RPC call failed: %s", s);
|
||||
if (!curl_err || opt_debug)
|
||||
applog(LOG_ERR, "JSON-RPC call failed: %s", s);
|
||||
|
||||
free(s);
|
||||
|
||||
|
@ -131,8 +131,8 @@ extern "C" void x11hash(void *output, const void *input)
|
||||
uint32_t* debugbuf = NULL; \
|
||||
cudaMallocHost(&debugbuf, 8*sizeof(uint32_t)); \
|
||||
cudaMemcpy(debugbuf, d_hash[thr_id], 8*sizeof(uint32_t), cudaMemcpyDeviceToHost); \
|
||||
printf("%s %08x %08x %08x %08x...\n", algo, htobe32(debugbuf[0]), htobe32(debugbuf[1]), \
|
||||
htobe32(debugbuf[2]), htobe32(debugbuf[3])); \
|
||||
printf("%s %08x %08x %08x %08x...\n", algo, swab32(debugbuf[0]), swab32(debugbuf[1]), \
|
||||
swab32(debugbuf[2]), swab32(debugbuf[3])); \
|
||||
cudaFreeHost(debugbuf); \
|
||||
} \
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user