Lines Matching refs:idr
76 * needs to be held during all idr write operations. When an object is
90 * the idr. This handles a reader that blocks and does not acquire
131 static int idr_add_uobj(struct idr *idr, struct ib_uobject *uobj)
138 ret = idr_alloc(idr, uobj, 0, 0, GFP_NOWAIT);
148 void idr_remove_uobj(struct idr *idr, struct ib_uobject *uobj)
151 idr_remove(idr, uobj->id);
155 static struct ib_uobject *__idr_get_uobj(struct idr *idr, int id,
161 uobj = idr_find(idr, id);
173 static struct ib_uobject *idr_read_uobj(struct idr *idr, int id,
178 uobj = __idr_get_uobj(idr, id, context);
194 static struct ib_uobject *idr_write_uobj(struct idr *idr, int id,
199 uobj = __idr_get_uobj(idr, id, context);
212 static void *idr_read_obj(struct idr *idr, int id, struct ib_ucontext *context,
217 uobj = idr_read_uobj(idr, id, context, nested);