Lines Matching defs:iol
1502 #define PIOL_DATABUF(iol) ((void *)(&(iol)[1]))
1507 piol_t *iol;
1513 ASSERT(itemsize < MAPSIZE - sizeof (*iol));
1523 initial_size = MIN(MAPSIZE, initial_size + sizeof (*iol));
1524 iol = kmem_alloc(initial_size, KM_SLEEP);
1525 list_insert_head(iolhead, iol);
1526 iol->piol_usedsize = 0;
1527 iol->piol_size = initial_size;
1533 piol_t *iol;
1536 ASSERT(itemsize < MAPSIZE - sizeof (*iol));
1539 iol = (piol_t *)list_tail(iolhead);
1541 if (iol->piol_size <
1542 iol->piol_usedsize + sizeof (*iol) + itemsize) {
1552 list_insert_after(iolhead, iol, newiol);
1553 iol = list_next(iolhead, iol);
1554 ASSERT(iol == newiol);
1556 new = (char *)PIOL_DATABUF(iol) + iol->piol_usedsize;
1557 iol->piol_usedsize += itemsize;
1566 piol_t *iol;
1568 while ((iol = list_head(iolhead)) != NULL) {
1569 list_remove(iolhead, iol);
1571 if (copyout(PIOL_DATABUF(iol), *tgt,
1572 iol->piol_usedsize))
1574 *tgt += iol->piol_usedsize;
1576 kmem_free(iol, iol->piol_size);
1589 piol_t *iol;
1592 while ((iol = list_head(iolhead)) != NULL) {
1593 list_remove(iolhead, iol);
1594 base = PIOL_DATABUF(iol);
1595 size = iol->piol_usedsize;
1600 kmem_free(iol, iol->piol_size);