Re: [patch V2 3/7] futex: Add op for hash preallocation

From: Peter Zijlstra
Date: Thu May 19 2016 - 08:26:13 EST


On Thu, May 05, 2016 at 08:44:05PM -0000, Thomas Gleixner wrote:
> +static int futex_preallocate_hash(unsigned int slots)
> +{
> +#ifdef CONFIG_FUTEX_PRIVATE_HASH
> + struct mm_struct *mm = current->mm;
> + struct futex_hash_bucket *hb;
> + unsigned int bits;
> +
> + /* Try to allocate the requested nr of slots */
> + bits = order_base_2(slots);
> +
> + if (bits < FUTEX_MIN_HASH_BITS)
> + bits = FUTEX_MIN_HASH_BITS;
> +
> + if (bits > futex_max_hash_bits)
> + bits = futex_max_hash_bits;
> +
> + futex_populate_hash(bits);

Should we not simply fail if the provided number of slots is not a power
of 2 ?