Lines Matching defs:cip
370 struct indir *cip;
377 for (cip = ip; cip != NULL;) {
378 if (cip->shift) {
379 idx = (offset >> cip->shift) & NMASK;
380 up = cip->array[idx];
381 cip = (struct indir *)up;
385 return (cip->array[idx]);
397 struct indir *cip, *lip[10];
405 cip = ip;
407 lip[li++] = cip;
408 if (cip->shift) {
409 idx = (offset >> cip->shift) & NMASK;
410 up = cip->array[idx];
412 cip = (struct indir *)up;
416 cip->array[idx] =
417 (uintptr_t)new_indir(cip->shift - nshift);
418 if (cip->array[idx] == 0)
420 cip->used++;
421 up = cip->array[idx];
422 cip = (struct indir *)up;
427 up = cip->array[idx];
429 cip->used--;
430 cip->array[idx] = ptr;
432 cip->used++;
435 if (cip->used != 0 || li == 1)
438 while (cip->used == 0 && cip != ip) {
442 KASSERT(up == (uintptr_t)cip, ("md screwed up"));
443 del_indir(cip);
446 cip = lip[li];