pcg 1354 kern/subr_pool.c struct pool_cache_group *pcg; pcg 1419 kern/subr_pool.c TAILQ_FOREACH(pcg, &pc->pc_grouplist, pcg_list) { pcg 1420 kern/subr_pool.c (*pr)("\t\tgroup %p: avail %d\n", pcg, pcg->pcg_avail); pcg 1422 kern/subr_pool.c (*pr)("\t\t\t%p\n", pcg->pcg_objects[i]); pcg 1643 kern/subr_pool.c pcg_get(struct pool_cache_group *pcg) pcg 1648 kern/subr_pool.c KASSERT(pcg->pcg_avail <= PCG_NOBJECTS); pcg 1649 kern/subr_pool.c KASSERT(pcg->pcg_avail != 0); pcg 1650 kern/subr_pool.c idx = --pcg->pcg_avail; pcg 1652 kern/subr_pool.c KASSERT(pcg->pcg_objects[idx] != NULL); pcg 1653 kern/subr_pool.c object = pcg->pcg_objects[idx]; pcg 1654 kern/subr_pool.c pcg->pcg_objects[idx] = NULL; pcg 1660 kern/subr_pool.c pcg_put(struct pool_cache_group *pcg, void *object) pcg 1664 kern/subr_pool.c KASSERT(pcg->pcg_avail < PCG_NOBJECTS); pcg 1665 kern/subr_pool.c idx = pcg->pcg_avail++; pcg 1667 kern/subr_pool.c KASSERT(pcg->pcg_objects[idx] == NULL); pcg 1668 kern/subr_pool.c pcg->pcg_objects[idx] = object; pcg 1679 kern/subr_pool.c struct pool_cache_group *pcg; pcg 1689 kern/subr_pool.c if ((pcg = pc->pc_allocfrom) == NULL) { pcg 1690 kern/subr_pool.c TAILQ_FOREACH(pcg, &pc->pc_grouplist, pcg_list) { pcg 1691 kern/subr_pool.c if (pcg->pcg_avail != 0) { pcg 1692 kern/subr_pool.c pc->pc_allocfrom = pcg; pcg 1718 kern/subr_pool.c object = pcg_get(pcg); pcg 1720 kern/subr_pool.c if (pcg->pcg_avail == 0) pcg 1736 kern/subr_pool.c struct pool_cache_group *pcg; pcg 1741 kern/subr_pool.c if ((pcg = pc->pc_freeto) == NULL) { pcg 1742 kern/subr_pool.c TAILQ_FOREACH(pcg, &pc->pc_grouplist, pcg_list) { pcg 1743 kern/subr_pool.c if (pcg->pcg_avail != PCG_NOBJECTS) { pcg 1744 kern/subr_pool.c pc->pc_freeto = pcg; pcg 1755 kern/subr_pool.c pcg = pool_get(&pcgpool, PR_NOWAIT); pcg 1757 kern/subr_pool.c if (pcg != NULL) { pcg 1758 kern/subr_pool.c memset(pcg, 0, sizeof(*pcg)); pcg 1761 kern/subr_pool.c TAILQ_INSERT_TAIL(&pc->pc_grouplist, pcg, pcg_list); pcg 1763 kern/subr_pool.c pc->pc_freeto = pcg; pcg 1777 kern/subr_pool.c pcg_put(pcg, object); pcg 1779 kern/subr_pool.c if (pcg->pcg_avail == PCG_NOBJECTS) pcg 1810 kern/subr_pool.c struct pool_cache_group *pcg, *npcg; pcg 1814 kern/subr_pool.c for (pcg = TAILQ_FIRST(&pc->pc_grouplist); pcg != NULL; pcg 1815 kern/subr_pool.c pcg = npcg) { pcg 1816 kern/subr_pool.c npcg = TAILQ_NEXT(pcg, pcg_list); pcg 1817 kern/subr_pool.c while (pcg->pcg_avail != 0) { pcg 1819 kern/subr_pool.c object = pcg_get(pcg); pcg 1820 kern/subr_pool.c if (pcg->pcg_avail == 0 && pc->pc_allocfrom == pcg) pcg 1828 kern/subr_pool.c TAILQ_REMOVE(&pc->pc_grouplist, pcg, pcg_list); pcg 1829 kern/subr_pool.c if (pc->pc_freeto == pcg) pcg 1832 kern/subr_pool.c pool_put(&pcgpool, pcg);