Lines Matching refs:rbp
82 void ch_big_rbuf_recycle(ch_esb_t *rbp);
83 void ch_small_rbuf_recycle(ch_esb_t *rbp);
1126 ch_esb_t *rbp; in pe_small_rbuf_pool_init() local
1149 rbp = ch_alloc_small_esbbuf(sa, j); in pe_small_rbuf_pool_init()
1150 if (rbp == NULL) in pe_small_rbuf_pool_init()
1155 rbp->cs_next = sa->ch_small_esb_free; in pe_small_rbuf_pool_init()
1156 sa->ch_small_esb_free = rbp; in pe_small_rbuf_pool_init()
1161 rbp->cs_owner = sa->ch_small_owner; in pe_small_rbuf_pool_init()
1162 sa->ch_small_owner = rbp; in pe_small_rbuf_pool_init()
1185 ch_esb_t *rbp; in pe_big_rbuf_pool_init() local
1208 rbp = ch_alloc_big_esbbuf(sa, j); in pe_big_rbuf_pool_init()
1209 if (rbp == NULL) in pe_big_rbuf_pool_init()
1211 rbp->cs_next = sa->ch_big_esb_free; in pe_big_rbuf_pool_init()
1212 sa->ch_big_esb_free = rbp; in pe_big_rbuf_pool_init()
1217 rbp->cs_owner = sa->ch_big_owner; in pe_big_rbuf_pool_init()
1218 sa->ch_big_owner = rbp; in pe_big_rbuf_pool_init()
1239 ch_esb_t *rbp; in ch_alloc_small_esbbuf() local
1241 rbp = (ch_esb_t *)kmem_zalloc(sizeof (ch_esb_t), KM_SLEEP); in ch_alloc_small_esbbuf()
1242 if (rbp == NULL) { in ch_alloc_small_esbbuf()
1247 rbp->cs_buf = (caddr_t)ch_alloc_dma_mem(sa, 1, DMA_STREAM|DMA_SMALN, in ch_alloc_small_esbbuf()
1248 SGE_SM_BUF_SZ(sa), &rbp->cs_pa, &rbp->cs_dh, &rbp->cs_ah); in ch_alloc_small_esbbuf()
1250 rbp->cs_buf = (caddr_t)ch_alloc_dma_mem(sa, 0, DMA_STREAM|DMA_SMALN, in ch_alloc_small_esbbuf()
1251 SGE_SM_BUF_SZ(sa), &rbp->cs_pa, &rbp->cs_dh, &rbp->cs_ah); in ch_alloc_small_esbbuf()
1254 if (rbp->cs_buf == NULL) { in ch_alloc_small_esbbuf()
1255 kmem_free(rbp, sizeof (ch_esb_t)); in ch_alloc_small_esbbuf()
1259 rbp->cs_sa = sa; in ch_alloc_small_esbbuf()
1260 rbp->cs_index = i; in ch_alloc_small_esbbuf()
1262 rbp->cs_frtn.free_func = (void (*)())&ch_small_rbuf_recycle; in ch_alloc_small_esbbuf()
1263 rbp->cs_frtn.free_arg = (caddr_t)rbp; in ch_alloc_small_esbbuf()
1265 return (rbp); in ch_alloc_small_esbbuf()
1276 ch_esb_t *rbp; in ch_alloc_big_esbbuf() local
1278 rbp = (ch_esb_t *)kmem_zalloc(sizeof (ch_esb_t), KM_SLEEP); in ch_alloc_big_esbbuf()
1279 if (rbp == NULL) { in ch_alloc_big_esbbuf()
1284 rbp->cs_buf = (caddr_t)ch_alloc_dma_mem(sa, 1, DMA_STREAM|DMA_BGALN, in ch_alloc_big_esbbuf()
1285 SGE_BG_BUF_SZ(sa), &rbp->cs_pa, &rbp->cs_dh, &rbp->cs_ah); in ch_alloc_big_esbbuf()
1287 rbp->cs_buf = (caddr_t)ch_alloc_dma_mem(sa, 0, DMA_STREAM|DMA_BGALN, in ch_alloc_big_esbbuf()
1288 SGE_BG_BUF_SZ(sa), &rbp->cs_pa, &rbp->cs_dh, &rbp->cs_ah); in ch_alloc_big_esbbuf()
1291 if (rbp->cs_buf == NULL) { in ch_alloc_big_esbbuf()
1292 kmem_free(rbp, sizeof (ch_esb_t)); in ch_alloc_big_esbbuf()
1296 rbp->cs_sa = sa; in ch_alloc_big_esbbuf()
1297 rbp->cs_index = i; in ch_alloc_big_esbbuf()
1299 rbp->cs_frtn.free_func = (void (*)())&ch_big_rbuf_recycle; in ch_alloc_big_esbbuf()
1300 rbp->cs_frtn.free_arg = (caddr_t)rbp; in ch_alloc_big_esbbuf()
1302 return (rbp); in ch_alloc_big_esbbuf()
1311 ch_esb_t *rbp; in pe_rbuf_pool_free() local
1319 rbp = sa->ch_small_owner; in pe_rbuf_pool_free()
1320 sa->ch_small_owner = rbp->cs_owner; in pe_rbuf_pool_free()
1321 rbp->cs_owner = NULL; in pe_rbuf_pool_free()
1322 rbp->cs_flag = 1; in pe_rbuf_pool_free()
1325 while ((rbp = sa->ch_small_esb_free) != NULL) { in pe_rbuf_pool_free()
1327 sa->ch_small_esb_free = rbp->cs_next; in pe_rbuf_pool_free()
1329 ch_free_dma_mem(rbp->cs_dh, rbp->cs_ah); in pe_rbuf_pool_free()
1331 kmem_free(rbp, sizeof (ch_esb_t)); in pe_rbuf_pool_free()
1346 rbp = sa->ch_big_owner; in pe_rbuf_pool_free()
1347 sa->ch_big_owner = rbp->cs_owner; in pe_rbuf_pool_free()
1348 rbp->cs_owner = NULL; in pe_rbuf_pool_free()
1349 rbp->cs_flag = 1; in pe_rbuf_pool_free()
1352 while ((rbp = sa->ch_big_esb_free) != NULL) { in pe_rbuf_pool_free()
1354 sa->ch_big_esb_free = rbp->cs_next; in pe_rbuf_pool_free()
1356 ch_free_dma_mem(rbp->cs_dh, rbp->cs_ah); in pe_rbuf_pool_free()
1358 kmem_free(rbp, sizeof (ch_esb_t)); in pe_rbuf_pool_free()
1368 ch_small_rbuf_recycle(ch_esb_t *rbp) in ch_small_rbuf_recycle() argument
1370 ch_t *sa = rbp->cs_sa; in ch_small_rbuf_recycle()
1372 if (rbp->cs_flag) { in ch_small_rbuf_recycle()
1377 ch_free_dma_mem(rbp->cs_dh, rbp->cs_ah); in ch_small_rbuf_recycle()
1379 i = rbp->cs_index; in ch_small_rbuf_recycle()
1384 kmem_free(rbp, sizeof (ch_esb_t)); in ch_small_rbuf_recycle()
1397 rbp->cs_next = sa->ch_small_esb_free; in ch_small_rbuf_recycle()
1398 sa->ch_small_esb_free = rbp; in ch_small_rbuf_recycle()
1404 atomic_dec_32(&buffers_in_use[rbp->cs_index]); in ch_small_rbuf_recycle()
1411 ch_big_rbuf_recycle(ch_esb_t *rbp) in ch_big_rbuf_recycle() argument
1413 ch_t *sa = rbp->cs_sa; in ch_big_rbuf_recycle()
1415 if (rbp->cs_flag) { in ch_big_rbuf_recycle()
1420 ch_free_dma_mem(rbp->cs_dh, rbp->cs_ah); in ch_big_rbuf_recycle()
1422 i = rbp->cs_index; in ch_big_rbuf_recycle()
1427 kmem_free(rbp, sizeof (ch_esb_t)); in ch_big_rbuf_recycle()
1440 rbp->cs_next = sa->ch_big_esb_free; in ch_big_rbuf_recycle()
1441 sa->ch_big_esb_free = rbp; in ch_big_rbuf_recycle()
1447 atomic_dec_32(&buffers_in_use[rbp->cs_index]); in ch_big_rbuf_recycle()
1457 ch_esb_t *rbp; in ch_get_small_rbuf() local
1460 rbp = sa->ch_small_esb_free; in ch_get_small_rbuf()
1461 if (rbp) { in ch_get_small_rbuf()
1462 sa->ch_small_esb_free = rbp->cs_next; in ch_get_small_rbuf()
1466 return (rbp); in ch_get_small_rbuf()
1477 ch_esb_t *rbp; in ch_get_big_rbuf() local
1480 rbp = sa->ch_big_esb_free; in ch_get_big_rbuf()
1481 if (rbp) { in ch_get_big_rbuf()
1482 sa->ch_big_esb_free = rbp->cs_next; in ch_get_big_rbuf()
1486 return (rbp); in ch_get_big_rbuf()