improve interaction of slot rand with slot mask

This commit is contained in:
Daniel Micay 2018-08-25 18:04:55 -04:00
parent 173dd6e7a5
commit c5d76179a5

View File

@ -257,7 +257,7 @@ static size_t get_free_slot(struct random_state *rng, size_t slots, struct slab_
}
// randomize start location for linear search (uniform random choice is too slow)
uint64_t random_split = ~0UL >> get_random_size_uniform(rng, slots);
uint64_t random_split = ~(~0UL << get_random_size_uniform(rng, slots));
size_t slot = ffzl(masked | random_split);
if (slot) {