Re: [PATCH v2] binder: use bitmap for faster descriptor lookup

From: Carlos Llamas
Date: Wed May 15 2024 - 12:43:46 EST


On Wed, May 15, 2024 at 04:38:51PM +0000, Carlos Llamas wrote:
> On Wed, May 15, 2024 at 05:29:29PM +0200, Alice Ryhl wrote:
> > On Tue, May 14, 2024 at 6:09 PM Carlos Llamas <cmllamas@xxxxxxxxxx> wrote:
> > > +static inline int
> > > +dbitmap_get_first_zero_bit(struct dbitmap *dmap, unsigned long *bit)
> > > +{
> > > + unsigned long n;
> > > +
> > > + n = find_first_zero_bit(dmap->map, dmap->nbits);
> > > + if (unlikely(n == dmap->nbits))
> > > + return -ENOSPC;
> > > +
> > > + *bit = n;
> > > + set_bit(n, dmap->map);
> > > +
> > > + return 0;
> > > +}
> >
> > Could we rename this method to something that makes it more clear that
> > it's not just a getter, but that it actually also sets the bit?
> >
> > Alice
>
> Sure, what were you thinking? I had picked "get" and not just "find" to
> indicate this behavior. However, I'll take any better ideas. The option
> of dbitmap_find_and_set_first_zero_bit() seemed too long for me.
>
> --
> Carlos Llamas

I like dbitmap_acquire_first_zero_bit(). Sounds better?