Lines Matching refs:uf
367 struct unr *up, *uf, *us;
377 TAILQ_FOREACH(uf, &uh->head, list) {
378 if (uf->len >= NBITS)
381 if (is_bitmap(uh, uf))
383 l = uf->len;
384 up = uf;
398 us = uf;
410 uf = TAILQ_NEXT(us, list);
422 if (!is_bitmap(uh, uf)) {
423 if (uf->ptr == NULL) {
424 bit_nclear(ub->map, a, a + uf->len - 1);
426 bit_nset(ub->map, a, a + uf->len - 1);
427 ub->busy += uf->len;
429 uf->ptr = ub;
430 uf->len += a;
431 us = uf;
433 ubf = uf->ptr;
434 for (l = 0; l < uf->len; l++, a++) {
442 uf->len = a;
443 delete_unr(uh, uf->ptr);
444 uf->ptr = ub;
445 us = uf;
450 uf = TAILQ_NEXT(us, list);
451 if (uf == NULL)
453 if (uf->len + us->len > NBITS)
455 if (uf->ptr == NULL) {
456 bit_nclear(ub->map, us->len, us->len + uf->len - 1);
457 us->len += uf->len;
458 TAILQ_REMOVE(&uh->head, uf, list);
459 delete_unr(uh, uf);
460 } else if (uf->ptr == uh) {
461 bit_nset(ub->map, us->len, us->len + uf->len - 1);
462 ub->busy += uf->len;
463 us->len += uf->len;
464 TAILQ_REMOVE(&uh->head, uf, list);
465 delete_unr(uh, uf);
467 ubf = uf->ptr;
468 for (l = 0; l < uf->len; l++, us->len++) {
476 TAILQ_REMOVE(&uh->head, uf, list);
478 delete_unr(uh, uf);