Messages in this thread | | | Date | Tue, 11 Jul 2006 16:53:27 -0700 | From | Zach Brown <> | Subject | Re: [openib-general] ipoib lockdep warning |
| |
Roland Dreier wrote: > Hmm, good point. > > It sort of seems to me like the idr interfaces are broken by design. > Internally, lib/idr.c uses bare spin_lock(&idp->lock) with no > interrupt disabling or anything in both the idr_pre_get() and > idr_get_new() code paths.
I wasn't thrilled to see that either. We seem to have a fair precedent (list.h, rbtree, etc) for leaving serialization to callers.
> So, ugh... maybe the best thing to do is change lib/idr.c to use > spin_lock_irqsave() internally?
I dunno, it seems to have had _irq() locking in the past? From the comment at the top:
* Modified by George Anzinger to reuse immediately and to use * find bit instructions. Also removed _irq on spinlocks.
- z - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |