From: Pavan Nikhilesh Date: Sun, 4 Mar 2018 14:58:31 +0000 (+0530) Subject: hash: fix missing spinlock unlock in add key X-Git-Url: http://git.droids-corp.org/?a=commitdiff_plain;h=e166e55c1a472d6bbc388c66f41be5823c63f8b7;p=dpdk.git hash: fix missing spinlock unlock in add key Fix missing spinlock unlock during add key when key is already present. Fixes: be856325cba3 ("hash: add scalable multi-writer insertion with Intel TSX") Cc: stable@dpdk.org Signed-off-by: Pavan Nikhilesh Acked-by: Pablo de Lara --- diff --git a/lib/librte_hash/rte_cuckoo_hash.c b/lib/librte_hash/rte_cuckoo_hash.c index 9b1387b5e8..a07543a29a 100644 --- a/lib/librte_hash/rte_cuckoo_hash.c +++ b/lib/librte_hash/rte_cuckoo_hash.c @@ -552,7 +552,8 @@ __rte_hash_add_key_with_hash(const struct rte_hash *h, const void *key, * Return index where key is stored, * subtracting the first dummy index */ - return prim_bkt->key_idx[i] - 1; + ret = prim_bkt->key_idx[i] - 1; + goto failure; } } } @@ -572,7 +573,8 @@ __rte_hash_add_key_with_hash(const struct rte_hash *h, const void *key, * Return index where key is stored, * subtracting the first dummy index */ - return sec_bkt->key_idx[i] - 1; + ret = sec_bkt->key_idx[i] - 1; + goto failure; } } }