Messages in this thread | | | Date | Mon, 30 May 2016 10:59:05 +0200 | From | Peter Zijlstra <> | Subject | Re: [patch V2 3/7] futex: Add op for hash preallocation |
| |
On Fri, May 27, 2016 at 07:27:57PM +0200, Sebastian Andrzej Siewior wrote: > On 2016-05-19 14:25:58 [+0200], Peter Zijlstra wrote: > > 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 ? > > We could if it is worth doing so. The procfs interface which limits the > upper / lower limit is bits based. This is slot based which then gets > converted to the number if bits. > If we align this interface with proc's limits then we would expect the > number of bits instead slots - now check for power of two anymore. > Anyone?
I'm all for consistent and strict when it comes to things like this.
| |