|
@@ -333,16 +333,6 @@ static int calc_max_buckets(void)
|
|
|
return mem;
|
|
|
}
|
|
|
|
|
|
-/*
|
|
|
- * Rounds a number down to a power of 2.
|
|
|
- */
|
|
|
-static uint32_t round_down(uint32_t n)
|
|
|
-{
|
|
|
- while (n & (n - 1))
|
|
|
- n &= (n - 1);
|
|
|
- return n;
|
|
|
-}
|
|
|
-
|
|
|
/*
|
|
|
* Allocate room for a suitable hash table.
|
|
|
*/
|
|
@@ -361,8 +351,7 @@ static int init_hash_tables(struct dm_snapshot *s)
|
|
|
hash_size = min(origin_dev_size, cow_dev_size) >> s->chunk_shift;
|
|
|
hash_size = min(hash_size, max_buckets);
|
|
|
|
|
|
- /* Round it down to a power of 2 */
|
|
|
- hash_size = round_down(hash_size);
|
|
|
+ hash_size = rounddown_pow_of_two(hash_size);
|
|
|
if (init_exception_table(&s->complete, hash_size))
|
|
|
return -ENOMEM;
|
|
|
|