Lines Matching refs:vmultip

308 vio_init_multipools(vio_multi_pool_t *vmultip, int num_pools, ...)  in vio_init_multipools()  argument
322 vmultip->tbsz = (sizeof (uint32_t) * num_pools) + in vio_init_multipools()
325 tbuf = kmem_zalloc(vmultip->tbsz, KM_SLEEP); in vio_init_multipools()
326 vmultip->bufsz_tbl = (uint32_t *)tbuf; in vio_init_multipools()
327 vmultip->nbuf_tbl = (uint32_t *)(tbuf + in vio_init_multipools()
329 vmultip->vmpp = (vio_mblk_pool_t **)(tbuf + in vio_init_multipools()
331 vmultip->num_pools = num_pools; in vio_init_multipools()
336 vmultip->bufsz_tbl[i] = va_arg(vap, uint32_t); in vio_init_multipools()
339 vmultip->nbuf_tbl[i] = va_arg(vap, uint32_t); in vio_init_multipools()
343 for (i = 0; i < vmultip->num_pools; i++) { in vio_init_multipools()
344 status = vio_create_mblks(vmultip->nbuf_tbl[i], in vio_init_multipools()
345 vmultip->bufsz_tbl[i], NULL, &vmultip->vmpp[i]); in vio_init_multipools()
347 vio_destroy_multipools(vmultip, &fvmp); in vio_init_multipools()
371 vio_destroy_multipools(vio_multi_pool_t *vmultip, vio_mblk_pool_t **fvmp) in vio_destroy_multipools() argument
376 for (i = 0; i < vmultip->num_pools; i++) { in vio_destroy_multipools()
377 if ((vmp = vmultip->vmpp[i]) != NULL) { in vio_destroy_multipools()
389 if (vmultip->tbsz != 0) in vio_destroy_multipools()
390 kmem_free(vmultip->bufsz_tbl, vmultip->tbsz); in vio_destroy_multipools()
391 vmultip->bufsz_tbl = NULL; in vio_destroy_multipools()
392 vmultip->nbuf_tbl = NULL; in vio_destroy_multipools()
393 vmultip->vmpp = NULL; in vio_destroy_multipools()
394 vmultip->num_pools = 0; in vio_destroy_multipools()
395 vmultip->tbsz = 0; in vio_destroy_multipools()
404 vio_multipool_allocb(vio_multi_pool_t *vmultip, size_t size) in vio_multipool_allocb() argument
410 for (i = 0; i < vmultip->num_pools; i++) { in vio_multipool_allocb()
411 if (size > vmultip->bufsz_tbl[i]) { in vio_multipool_allocb()
414 vmp = vio_allocb(vmultip->vmpp[i]); in vio_multipool_allocb()