summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/ipcpd/normal/dht.c5
-rw-r--r--src/lib/CMakeLists.txt4
2 files changed, 6 insertions, 3 deletions
diff --git a/src/ipcpd/normal/dht.c b/src/ipcpd/normal/dht.c
index 2e6f60ab..be5411da 100644
--- a/src/ipcpd/normal/dht.c
+++ b/src/ipcpd/normal/dht.c
@@ -721,6 +721,7 @@ static void lookup_update(struct dht * dht,
struct contact * c = NULL;
size_t n;
size_t pos = 0;
+ bool mod = false;
assert(lu);
assert(msg);
@@ -774,6 +775,7 @@ static void lookup_update(struct dht * dht,
if (lu->n_contacts < dht->k) {
list_add_tail(&c->next, p);
++lu->n_contacts;
+ mod = true;
} else if (pos == dht->k) {
contact_destroy(c);
continue;
@@ -784,10 +786,11 @@ static void lookup_update(struct dht * dht,
struct contact, next);
list_del(&d->next);
contact_destroy(d);
+ mod = true;
}
}
- if (lu->out == 0)
+ if (lu->out == 0 && !mod)
lu->state = LU_COMPLETE;
else
lu->state = LU_UPDATE;
diff --git a/src/lib/CMakeLists.txt b/src/lib/CMakeLists.txt
index fa6254bf..6ab5ebc8 100644
--- a/src/lib/CMakeLists.txt
+++ b/src/lib/CMakeLists.txt
@@ -165,8 +165,8 @@ set(SHM_RDRB_NAME "/${SHM_PREFIX}.rdrb" CACHE INTERNAL
"Name for the main POSIX shared memory buffer")
set(SHM_RDRB_BLOCK_SIZE "sysconf(_SC_PAGESIZE)" CACHE STRING
"SDU buffer block size, multiple of pagesize for performance")
-set(SHM_RBUFF_LOCKLESS 1 CACHE BOOL
- "Enable shared memory rbuff lockless support")
+set(SHM_RBUFF_LOCKLESS 0 CACHE BOOL
+ "Enable shared memory lockless rbuff support")
set(SOURCE_FILES
# Add source files here