Lines Matching refs:id
8 * Small id to pointer translation service avoiding fixed sized
115 int __must_check idr_alloc_u32(struct idr *, void *ptr, u32 *id,
118 void *idr_remove(struct idr *, unsigned long id);
119 void *idr_find(const struct idr *, unsigned long id);
121 int (*fn)(int id, void *p, void *data), void *data);
124 void *idr_replace(struct idr *, void *, unsigned long id);
181 * @id: Entry ID.
183 * @entry and @id do not need to be initialized before the loop, and
187 #define idr_for_each_entry(idr, entry, id) \
188 for (id = 0; ((entry) = idr_get_next(idr, &(id))) != NULL; id += 1U)
195 * @id: Entry ID.
197 * @entry and @id do not need to be initialized before the loop, and
201 #define idr_for_each_entry_ul(idr, entry, tmp, id) \
202 for (tmp = 0, id = 0; \
203 ((entry) = tmp <= id ? idr_get_next_ul(idr, &(id)) : NULL) != NULL; \
204 tmp = id, ++id)
210 * @id: Entry ID.
214 #define idr_for_each_entry_continue(idr, entry, id) \
215 for ((entry) = idr_get_next((idr), &(id)); \
217 ++id, (entry) = idr_get_next((idr), &(id)))
224 * @id: Entry ID.
230 #define idr_for_each_entry_continue_ul(idr, entry, tmp, id) \
231 for (tmp = id; \
232 ((entry) = tmp <= id ? idr_get_next_ul(idr, &(id)) : NULL) != NULL; \
233 tmp = id, ++id)
236 * IDA - ID Allocator, use when translation from id to pointer isn't necessary.
258 void ida_free(struct ida *, unsigned int id);
325 #define ida_simple_remove(ida, id) ida_free(ida, id)