X-Git-Url: https://gerrit.fd.io/r/gitweb?a=blobdiff_plain;f=src%2Fvppinfra%2Fbihash_8_8.h;h=2471871fc81fd514b7ebc478d75e23cd531c1f67;hb=9418143bd4c8f3bb46c32800c1ae85b20bbe8815;hp=68049351eea419a85f90388b84be9f0f6a07a946;hpb=e2d40b81585bceaf30b8547554aab24d60e7d396;p=vpp.git diff --git a/src/vppinfra/bihash_8_8.h b/src/vppinfra/bihash_8_8.h index 68049351eea..2471871fc81 100644 --- a/src/vppinfra/bihash_8_8.h +++ b/src/vppinfra/bihash_8_8.h @@ -13,9 +13,20 @@ * limitations under the License. */ #undef BIHASH_TYPE +#undef BIHASH_KVP_PER_PAGE +#undef BIHASH_32_64_SVM +#undef BIHASH_ENABLE_STATS +#undef BIHASH_KVP_AT_BUCKET_LEVEL +#undef BIHASH_LAZY_INSTANTIATE +#undef BIHASH_BUCKET_PREFETCH_CACHE_LINES +#undef BIHASH_USE_HEAP #define BIHASH_TYPE _8_8 -#define BIHASH_KVP_PER_PAGE 4 +#define BIHASH_KVP_PER_PAGE 7 +#define BIHASH_KVP_AT_BUCKET_LEVEL 1 +#define BIHASH_LAZY_INSTANTIATE 0 +#define BIHASH_BUCKET_PREFETCH_CACHE_LINES 2 +#define BIHASH_USE_HEAP 1 #ifndef __included_bihash_8_8_h__ #define __included_bihash_8_8_h__ @@ -33,13 +44,19 @@ typedef struct u64 value; /**< the value */ } clib_bihash_kv_8_8_t; +static inline void +clib_bihash_mark_free_8_8 (clib_bihash_kv_8_8_t *v) +{ + v->value = 0xFEEDFACE8BADF00DULL; +} + /** Decide if a clib_bihash_kv_8_8_t instance is free @param v- pointer to the (key,value) pair */ static inline int clib_bihash_is_free_8_8 (clib_bihash_kv_8_8_t * v) { - if (v->key == ~0ULL && v->value == ~0ULL) + if (v->value == 0xFEEDFACE8BADF00DULL) return 1; return 0; }