Browse Source

Clear pool work on a stratum reconnect message.

nfactor-troky
Con Kolivas 11 years ago committed by Noel Maersk
parent
commit
cc2aa215a8
  1. 1
      miner.h
  2. 7
      sgminer.c
  3. 2
      util.c

1
miner.h

@ -1023,6 +1023,7 @@ extern pthread_mutex_t restart_lock; @@ -1023,6 +1023,7 @@ extern pthread_mutex_t restart_lock;
extern pthread_cond_t restart_cond;
extern void clear_stratum_shares(struct pool *pool);
extern void clear_pool_work(struct pool *pool);
extern void set_target(unsigned char *dest_target, double diff);
extern int restart_wait(struct thr_info *thr, unsigned int mstime);

7
sgminer.c

@ -3598,8 +3598,6 @@ static struct pool *priority_pool(int choice) @@ -3598,8 +3598,6 @@ static struct pool *priority_pool(int choice)
return ret;
}
static void clear_pool_work(struct pool *pool);
/* Specifies whether we can switch to this pool or not. */
static bool pool_unusable(struct pool *pool)
{
@ -5138,7 +5136,7 @@ void clear_stratum_shares(struct pool *pool) @@ -5138,7 +5136,7 @@ void clear_stratum_shares(struct pool *pool)
}
}
static void clear_pool_work(struct pool *pool)
void clear_pool_work(struct pool *pool)
{
struct work *work, *tmp;
int cleared = 0;
@ -5152,6 +5150,9 @@ static void clear_pool_work(struct pool *pool) @@ -5152,6 +5150,9 @@ static void clear_pool_work(struct pool *pool)
}
}
mutex_unlock(stgd_lock);
if (cleared)
applog(LOG_INFO, "Cleared %d work items due to stratum disconnect on pool %d", cleared, pool->pool_no);
}
static int cp_prio(void)

2
util.c

@ -1691,6 +1691,8 @@ static bool parse_reconnect(struct pool *pool, json_t *val) @@ -1691,6 +1691,8 @@ static bool parse_reconnect(struct pool *pool, json_t *val)
applog(LOG_NOTICE, "Reconnect requested from %s to %s", pool->poolname, address);
clear_pool_work(pool);
mutex_lock(&pool->stratum_lock);
__suspend_stratum(pool);
tmp = pool->sockaddr_url;

Loading…
Cancel
Save