Lines Matching refs:ida
636 ida_get_new_above(struct ida *ida, int starting_id, int *p_id) in ida_get_new_above() argument
638 return (idr_get_new_above(&ida->idr, NULL, starting_id, p_id)); in ida_get_new_above()
746 ida_pre_get(struct ida *ida, gfp_t flags) in ida_pre_get() argument
748 if (idr_pre_get(&ida->idr, flags) == 0) in ida_pre_get()
751 if (ida->free_bitmap == NULL) { in ida_pre_get()
752 ida->free_bitmap = in ida_pre_get()
755 return (ida->free_bitmap != NULL); in ida_pre_get()
759 ida_simple_get(struct ida *ida, unsigned int start, unsigned int end, in ida_simple_get() argument
774 if (!ida_pre_get(ida, flags)) in ida_simple_get()
777 if ((ret = ida_get_new_above(ida, start, &id)) == 0) { in ida_simple_get()
779 ida_remove(ida, id); in ida_simple_get()
792 ida_simple_remove(struct ida *ida, unsigned int id) in ida_simple_remove() argument
794 idr_remove(&ida->idr, id); in ida_simple_remove()
798 ida_remove(struct ida *ida, int id) in ida_remove() argument
800 idr_remove(&ida->idr, id); in ida_remove()
804 ida_init(struct ida *ida) in ida_init() argument
806 idr_init(&ida->idr); in ida_init()
810 ida_destroy(struct ida *ida) in ida_destroy() argument
812 idr_destroy(&ida->idr); in ida_destroy()
813 free(ida->free_bitmap, M_IDR); in ida_destroy()
814 ida->free_bitmap = NULL; in ida_destroy()