diff options
| author | Sander Vrijders <sander.vrijders@ugent.be> | 2017-09-26 11:02:03 +0200 | 
|---|---|---|
| committer | Sander Vrijders <sander.vrijders@ugent.be> | 2017-09-26 11:02:03 +0200 | 
| commit | 90900d36b7a380fee19b2171f4e49eed1eb35e8d (patch) | |
| tree | c96e2be73ed64d85bc11bd5db8d8e7b1556d76d9 /src/ipcpd/normal | |
| parent | baa9da56af12d14d63d504101c7efeb20da71a78 (diff) | |
| download | ouroboros-90900d36b7a380fee19b2171f4e49eed1eb35e8d.tar.gz ouroboros-90900d36b7a380fee19b2171f4e49eed1eb35e8d.zip | |
ipcpd: normal: Set clock to realtime clock
A pthread_cond_wait was using the pthread_cond_clock and thereby
timing out constantly, consuming 100% CPU. This changes it to use the
realtime clock.
Diffstat (limited to 'src/ipcpd/normal')
| -rw-r--r-- | src/ipcpd/normal/dht.c | 6 | 
1 files changed, 3 insertions, 3 deletions
| diff --git a/src/ipcpd/normal/dht.c b/src/ipcpd/normal/dht.c index 4d0cdb02..b06c4480 100644 --- a/src/ipcpd/normal/dht.c +++ b/src/ipcpd/normal/dht.c @@ -2320,12 +2320,12 @@ static void * dht_handle_sdu(void * o)                  struct cmd *         cmd;                  int                  ret = 0; -                clock_gettime(PTHREAD_COND_CLOCK, &dl); +                clock_gettime(CLOCK_REALTIME_COARSE, &dl);                  ts_add(&dl, &to, &dl);                  pthread_mutex_lock(&dht->mtx); -                while(list_is_empty(&dht->cmds) && ret != -ETIMEDOUT) +                while (list_is_empty(&dht->cmds) && ret != -ETIMEDOUT)                          ret = -pthread_cond_timedwait(&dht->cond,                                                        &dht->mtx, &dl); @@ -2400,7 +2400,7 @@ static void * dht_handle_sdu(void * o)                                           "DHT enrolment refused.");                                  break; -                } +                        }                          if (msg->t_refresh != KAD_T_REFR) {                                  log_warn("Refresh time mismatch. " | 
