Lines Matching refs:layer
166 idr_pos(int id, int layer) in idr_pos() argument
168 return (id >> (IDR_BITS * layer)) & IDR_MASK; in idr_pos()
195 idr_remove_layer(struct idr_layer *il, int layer) in idr_remove_layer() argument
201 if (layer == 0) { in idr_remove_layer()
207 idr_remove_layer(il->ary[i], layer - 1); in idr_remove_layer()
226 int layer; in idr_remove_locked() local
231 layer = idr->layers - 1; in idr_remove_locked()
238 while (layer && il) { in idr_remove_locked()
239 idx = idr_pos(id, layer); in idr_remove_locked()
242 layer--; in idr_remove_locked()
276 int layer; in idr_find_layer_locked() local
280 layer = idr->layers - 1; in idr_find_layer_locked()
283 while (layer && il) { in idr_find_layer_locked()
284 il = il->ary[idr_pos(id, layer)]; in idr_find_layer_locked()
285 layer--; in idr_find_layer_locked()
430 int layer; in idr_get_new_locked() local
459 for (layer = idr->layers - 1;; layer--) { in idr_get_new_locked()
460 stack[layer] = il; in idr_get_new_locked()
466 id |= idx << (layer * IDR_BITS); in idr_get_new_locked()
467 if (layer == 0) in idr_get_new_locked()
485 while (il->bitmap == 0 && ++layer < idr->layers) { in idr_get_new_locked()
486 il = stack[layer]; in idr_get_new_locked()
487 il->bitmap &= ~(1 << idr_pos(id, layer)); in idr_get_new_locked()
517 int layer; in idr_get_new_above_locked() local
530 layer = 0; in idr_get_new_above_locked()
532 layer++; in idr_get_new_above_locked()
535 if (layer == MAX_LEVEL + 1) { in idr_get_new_above_locked()
542 while (idr->layers <= layer || in idr_get_new_above_locked()
562 for (layer = idr->layers - 1;; layer--) { in idr_get_new_above_locked()
563 stack[layer] = il; in idr_get_new_above_locked()
564 sidx = idr_pos(starting_id, layer); in idr_get_new_above_locked()
579 starting_id = id + (1 << ((layer + 1) * IDR_BITS)); in idr_get_new_above_locked()
584 id |= idx << (layer * IDR_BITS); in idr_get_new_above_locked()
585 if (layer == 0) in idr_get_new_above_locked()
603 while (il->bitmap == 0 && ++layer < idr->layers) { in idr_get_new_above_locked()
604 il = stack[layer]; in idr_get_new_above_locked()
605 il->bitmap &= ~(1 << idr_pos(id, layer)); in idr_get_new_above_locked()
690 idr_for_each_layer(struct idr_layer *il, int offset, int layer, in idr_for_each_layer() argument
697 if (layer == 0) { in idr_for_each_layer()
711 (i + offset) * IDR_SIZE, layer - 1, f, data); in idr_for_each_layer()