|
@@ -98,6 +98,17 @@ static inline void idr_set_cursor(struct idr *idr, unsigned int val)
|
|
|
* period).
|
|
|
*/
|
|
|
|
|
|
+#define idr_lock(idr) xa_lock(&(idr)->idr_rt)
|
|
|
+#define idr_unlock(idr) xa_unlock(&(idr)->idr_rt)
|
|
|
+#define idr_lock_bh(idr) xa_lock_bh(&(idr)->idr_rt)
|
|
|
+#define idr_unlock_bh(idr) xa_unlock_bh(&(idr)->idr_rt)
|
|
|
+#define idr_lock_irq(idr) xa_lock_irq(&(idr)->idr_rt)
|
|
|
+#define idr_unlock_irq(idr) xa_unlock_irq(&(idr)->idr_rt)
|
|
|
+#define idr_lock_irqsave(idr, flags) \
|
|
|
+ xa_lock_irqsave(&(idr)->idr_rt, flags)
|
|
|
+#define idr_unlock_irqrestore(idr, flags) \
|
|
|
+ xa_unlock_irqrestore(&(idr)->idr_rt, flags)
|
|
|
+
|
|
|
void idr_preload(gfp_t gfp_mask);
|
|
|
|
|
|
int idr_alloc(struct idr *, void *ptr, int start, int end, gfp_t);
|