Fine-grained add / delete locking 59/13559/7
authorDave Barach <dave@barachs.net>
Thu, 19 Jul 2018 16:11:16 +0000 (12:11 -0400)
committerDamjan Marion <dmarion@me.com>
Fri, 20 Jul 2018 17:38:35 +0000 (17:38 +0000)
commit508498f74d2df98e70a961d030cf0128a63a926d
treec2b9b8ddf109cc9086ac39adac812d677a58e578
parent13637632b87938a055618f17ed21b2a54b02459d
Fine-grained add / delete locking

Add a bucket-level lock bit. Use a spinlock only when actually
allocating, freeing, or splitting a bucket. Should improve
multi-thread add/del performance.

Change-Id: I3e40e2a8371685457f340d6584dea14e3207f2b0
Signed-off-by: Dave Barach <dave@barachs.net>
src/vppinfra/bihash_16_8.h
src/vppinfra/bihash_24_8.h
src/vppinfra/bihash_40_8.h
src/vppinfra/bihash_48_8.h
src/vppinfra/bihash_8_8.h
src/vppinfra/bihash_template.c
src/vppinfra/bihash_template.h
src/vppinfra/bihash_vec8_8.h
src/vppinfra/test_bihash_template.c