aboutsummaryrefslogtreecommitdiff
path: root/util/storage/lruhash.c
diff options
context:
space:
mode:
Diffstat (limited to 'util/storage/lruhash.c')
-rw-r--r--util/storage/lruhash.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/util/storage/lruhash.c b/util/storage/lruhash.c
index 0003ff491e46..3500a4ef0fe8 100644
--- a/util/storage/lruhash.c
+++ b/util/storage/lruhash.c
@@ -398,13 +398,13 @@ lruhash_remove(struct lruhash* table, hashvalue_type hash, void* key)
return;
}
table->num--;
- table->space_used -= (*table->sizefunc)(entry->key, entry->data);
- lock_quick_unlock(&table->lock);
+ table->space_used -= (*table->sizefunc)(entry->key, entry->data);
lock_rw_wrlock(&entry->lock);
if(table->markdelfunc)
(*table->markdelfunc)(entry->key);
lock_rw_unlock(&entry->lock);
lock_quick_unlock(&bin->lock);
+ lock_quick_unlock(&table->lock);
/* finish removal */
d = entry->data;
(*table->delkeyfunc)(entry->key, table->cb_arg);