From 7790f697c858f9f471234d1ec244465a1fc0f8f2 Mon Sep 17 00:00:00 2001 From: Jens Axboe Date: Fri, 23 Sep 2016 11:38:58 -0600 Subject: [PATCH 1/1] bloom: hashes take byte lengths, not nwords Signed-off-by: Jens Axboe --- lib/bloom.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/lib/bloom.c b/lib/bloom.c index 8594c977..3369c5e9 100644 --- a/lib/bloom.c +++ b/lib/bloom.c @@ -88,14 +88,14 @@ void bloom_free(struct bloom *b) free(b); } -static bool __bloom_check(struct bloom *b, uint32_t *data, unsigned int nwords, +static bool __bloom_check(struct bloom *b, void *data, unsigned int len, bool set) { uint32_t hash[N_HASHES]; int i, was_set; for (i = 0; i < N_HASHES; i++) { - hash[i] = hashes[i].fn(data, nwords, hashes[i].seed); + hash[i] = hashes[i].fn(data, len, hashes[i].seed); hash[i] = hash[i] % b->nentries; } @@ -115,5 +115,5 @@ static bool __bloom_check(struct bloom *b, uint32_t *data, unsigned int nwords, bool bloom_set(struct bloom *b, uint32_t *data, unsigned int nwords) { - return __bloom_check(b, data, nwords, true); + return __bloom_check(b, data, nwords * sizeof(uint32_t), true); } -- 2.25.1