Re: RFC: Boiler plate functions for ida / idr allocation?

From: Rusty Russell
Date: Fri Jul 22 2011 - 07:43:49 EST


On Thu, 21 Jul 2011 10:35:01 +0200, Tejun Heo <tj@xxxxxxxxxx> wrote:
> On Thu, Jul 21, 2011 at 10:19:46AM +0200, Tejun Heo wrote:
> > On Thu, Jul 21, 2011 at 05:07:36PM +0930, Rusty Russell wrote:
> > > From: Rusty Russell <rusty@xxxxxxxxxxxxxxx>
> > > Subject: ida: Simplified functions for id allocation.
> > >
> > > The current hyper-optimized functions are overkill if you simply want
> > > to allocate an id for a device. Create versions which use an internal
> > > lock.
> > >
> > > Thanks to Tejun for feedback. Feel free to delete the #ifdef TEST
> > > code.
> > >
> > > Signed-off-by: Rusty Russell <rusty@xxxxxxxxxxxxxxx>
> > ...
> > > static struct kmem_cache *idr_layer_cache;
> > > +static DEFINE_SPINLOCK(simple_ida);
> >
> > I think the name is a bit confusing. Maybe simple_ida_lock is better?
> > Other than that,
>
> Ooh, one more thing, maybe it would be better to use spin_lock_irq()
> to allow calling free under other irq locks.

Jonathan, please take original patch and mod it to taste, and produce a
series on it you can push to Andrew.

As for irqsave etc, as soon as someone needs that we can add
it... Jonathan will run into it soon enough.

Thanks,
Rusty.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/