Lines Matching refs:rx_ringp

971 	vnet_pseudo_rx_ring_t	*rx_ringp;  in vnet_ring_grp_init()  local
992 rx_ringp = kmem_zalloc(sizeof (vnet_pseudo_rx_ring_t) * in vnet_ring_grp_init()
999 rx_ringp[0].state |= VNET_RXRING_INUSE|VNET_RXRING_LDC_SERVICE; in vnet_ring_grp_init()
1000 rx_ringp[0].index = 0; in vnet_ring_grp_init()
1001 rx_ringp[1].state |= VNET_RXRING_INUSE|VNET_RXRING_HYBRID; in vnet_ring_grp_init()
1002 rx_ringp[1].index = 1; in vnet_ring_grp_init()
1003 rx_ringp[2].state |= VNET_RXRING_INUSE|VNET_RXRING_HYBRID; in vnet_ring_grp_init()
1004 rx_ringp[2].index = 2; in vnet_ring_grp_init()
1007 rx_grp->rings = rx_ringp; in vnet_ring_grp_init()
1011 rx_ringp = &rx_grp->rings[i]; in vnet_ring_grp_init()
1012 rx_ringp->state = VNET_RXRING_FREE; in vnet_ring_grp_init()
1013 rx_ringp->index = i; in vnet_ring_grp_init()
1058 vnet_pseudo_rx_ring_t *rx_ringp; in vnet_alloc_pseudo_rx_ring() local
1072 rx_ringp = &rx_grp->rings[index]; in vnet_alloc_pseudo_rx_ring()
1073 if (rx_ringp->state == VNET_RXRING_FREE) { in vnet_alloc_pseudo_rx_ring()
1074 rx_ringp->state |= VNET_RXRING_INUSE; in vnet_alloc_pseudo_rx_ring()
1081 return (rx_ringp); in vnet_alloc_pseudo_rx_ring()
1381 ringp = vresp->rx_ringp; in vnet_rx()
2224 vnet_pseudo_rx_ring_t *rx_ringp; in vnet_get_ring() local
2235 rx_ringp = &rx_grp->rings[r_index]; in vnet_get_ring()
2237 rx_ringp->handle = r_handle; in vnet_get_ring()
2243 rx_ringp->grp = rx_grp; in vnet_get_ring()
2244 rx_ringp->vnetp = vnetp; in vnet_get_ring()
2247 mintr->mi_handle = (mac_intr_handle_t)rx_ringp; in vnet_get_ring()
2251 infop->mri_driver = (mac_ring_driver_t)rx_ringp; in vnet_get_ring()
2379 vnet_pseudo_rx_ring_t *rx_ringp = (vnet_pseudo_rx_ring_t *)arg; in vnet_rx_ring_start() local
2386 if ((rx_ringp->state & in vnet_rx_ring_start()
2388 rx_ringp->gen_num = mr_gen_num; in vnet_rx_ring_start()
2389 rx_ringp->state |= VNET_RXRING_STARTED; in vnet_rx_ring_start()
2393 ASSERT((rx_ringp->state & VNET_RXRING_HYBRID) != 0); in vnet_rx_ring_start()
2402 if (rx_ringp->hw_rh == NULL) { in vnet_rx_ring_start()
2403 rx_ringp->gen_num = mr_gen_num; in vnet_rx_ring_start()
2404 rx_ringp->state |= VNET_RXRING_STARTED; in vnet_rx_ring_start()
2408 err = mac_hwring_start(rx_ringp->hw_rh); in vnet_rx_ring_start()
2410 rx_ringp->gen_num = mr_gen_num; in vnet_rx_ring_start()
2411 rx_ringp->state |= VNET_RXRING_STARTED; in vnet_rx_ring_start()
2422 vnet_pseudo_rx_ring_t *rx_ringp = (vnet_pseudo_rx_ring_t *)arg; in vnet_rx_ring_stop() local
2428 if ((rx_ringp->state & in vnet_rx_ring_stop()
2430 rx_ringp->state &= ~VNET_RXRING_STARTED; in vnet_rx_ring_stop()
2434 ASSERT((rx_ringp->state & VNET_RXRING_HYBRID) != 0); in vnet_rx_ring_stop()
2441 if (rx_ringp->hw_rh == NULL) { in vnet_rx_ring_stop()
2442 rx_ringp->state &= ~VNET_RXRING_STARTED; in vnet_rx_ring_stop()
2446 mac_hwring_stop(rx_ringp->hw_rh); in vnet_rx_ring_stop()
2447 rx_ringp->state &= ~VNET_RXRING_STARTED; in vnet_rx_ring_stop()
2453 vnet_pseudo_rx_ring_t *rx_ringp = (vnet_pseudo_rx_ring_t *)rdriver; in vnet_rx_ring_stat() local
2454 vnet_t *vnetp = (vnet_t *)rx_ringp->vnetp; in vnet_rx_ring_stat()
2463 if ((rx_ringp->state & VNET_RXRING_HYBRID) != 0) { in vnet_rx_ring_stat()
2472 (void) mac_hwring_getstat(rx_ringp->hw_rh, stat, val); in vnet_rx_ring_stat()
2477 ASSERT((rx_ringp->state & in vnet_rx_ring_stat()
2479 vresp = (vnet_res_t *)rx_ringp->hw_rh; in vnet_rx_ring_stat()
2537 vnet_pseudo_rx_ring_t *rx_ringp = (vnet_pseudo_rx_ring_t *)arg; in vnet_ring_enable_intr() local
2540 if (rx_ringp->hw_rh == NULL) { in vnet_ring_enable_intr()
2547 ASSERT((rx_ringp->state & VNET_RXRING_HYBRID) != 0); in vnet_ring_enable_intr()
2555 if (rx_ringp->state & VNET_RXRING_HYBRID) { in vnet_ring_enable_intr()
2556 return (mac_hwring_enable_intr(rx_ringp->hw_rh)); in vnet_ring_enable_intr()
2558 vresp = (vnet_res_t *)rx_ringp->hw_rh; in vnet_ring_enable_intr()
2569 vnet_pseudo_rx_ring_t *rx_ringp = (vnet_pseudo_rx_ring_t *)arg; in vnet_ring_disable_intr() local
2572 if (rx_ringp->hw_rh == NULL) { in vnet_ring_disable_intr()
2579 ASSERT((rx_ringp->state & VNET_RXRING_HYBRID) != 0); in vnet_ring_disable_intr()
2587 if (rx_ringp->state & VNET_RXRING_HYBRID) { in vnet_ring_disable_intr()
2588 return (mac_hwring_disable_intr(rx_ringp->hw_rh)); in vnet_ring_disable_intr()
2590 vresp = (vnet_res_t *)rx_ringp->hw_rh; in vnet_ring_disable_intr()
2601 vnet_pseudo_rx_ring_t *rx_ringp = (vnet_pseudo_rx_ring_t *)arg; in vnet_rx_poll() local
2604 vnet_t *vnetp = rx_ringp->vnetp; in vnet_rx_poll()
2606 if (rx_ringp->hw_rh == NULL) { in vnet_rx_poll()
2610 if (rx_ringp->state & VNET_RXRING_HYBRID) { in vnet_rx_poll()
2611 mp = mac_hwring_poll(rx_ringp->hw_rh, bytes_to_pickup); in vnet_rx_poll()
2624 vresp = (vnet_res_t *)rx_ringp->hw_rh; in vnet_rx_poll()
2796 vnet_pseudo_rx_ring_t *rx_ringp; in vnet_bind_hwrings() local
2838 rx_ringp = &rx_grp->rings[i + VNET_HYBRID_RXRING_INDEX]; in vnet_bind_hwrings()
2841 rx_ringp->hw_rh = hw_rh[i]; in vnet_bind_hwrings()
2844 mac_hwring_setup(rx_ringp->hw_rh, in vnet_bind_hwrings()
2845 (mac_resource_handle_t)rx_ringp, NULL); in vnet_bind_hwrings()
2848 if (rx_ringp->state & VNET_RXRING_STARTED) { in vnet_bind_hwrings()
2849 rv = mac_hwring_start(rx_ringp->hw_rh); in vnet_bind_hwrings()
2851 mac_hwring_teardown(rx_ringp->hw_rh); in vnet_bind_hwrings()
2852 rx_ringp->hw_rh = NULL; in vnet_bind_hwrings()
2899 vnet_pseudo_rx_ring_t *rx_ringp; in vnet_unbind_hwrings() local
2920 rx_ringp = &rx_grp->rings[i + VNET_HYBRID_RXRING_INDEX]; in vnet_unbind_hwrings()
2921 if (rx_ringp->hw_rh != NULL) { in vnet_unbind_hwrings()
2923 mac_hwring_stop(rx_ringp->hw_rh); in vnet_unbind_hwrings()
2926 mac_hwring_teardown(rx_ringp->hw_rh); in vnet_unbind_hwrings()
2927 rx_ringp->hw_rh = NULL; in vnet_unbind_hwrings()
2950 vnet_pseudo_rx_ring_t *rx_ringp; in vnet_bind_vgenring() local
2967 rx_ringp = &rx_grp->rings[0]; in vnet_bind_vgenring()
2968 rx_ringp->hw_rh = (mac_ring_handle_t)vresp; in vnet_bind_vgenring()
2969 vresp->rx_ringp = (void *)rx_ringp; in vnet_bind_vgenring()
2976 rx_ringp = vnet_alloc_pseudo_rx_ring(vnetp); in vnet_bind_vgenring()
2977 if (rx_ringp == NULL) { in vnet_bind_vgenring()
2984 rx_ringp->hw_rh = (mac_ring_handle_t)vresp; in vnet_bind_vgenring()
2992 vresp->rx_ringp = (void *)rx_ringp; in vnet_bind_vgenring()
2993 rx_ringp->state |= VNET_RXRING_LDC_GUEST; in vnet_bind_vgenring()
2996 rv = mac_group_add_ring(rx_grp->handle, rx_ringp->index); in vnet_bind_vgenring()
2998 rx_ringp->state &= ~VNET_RXRING_LDC_GUEST; in vnet_bind_vgenring()
2999 rx_ringp->hw_rh = NULL; in vnet_bind_vgenring()
3000 vnet_free_pseudo_rx_ring(vnetp, rx_ringp); in vnet_bind_vgenring()
3017 vnet_pseudo_rx_ring_t *rx_ringp; in vnet_unbind_vgenring() local
3025 if (vresp->rx_ringp == NULL) { in vnet_unbind_vgenring()
3037 rx_ringp = &rx_grp->rings[0]; in vnet_unbind_vgenring()
3038 rx_ringp->hw_rh = NULL; in vnet_unbind_vgenring()
3039 vresp->rx_ringp = NULL; in vnet_unbind_vgenring()
3046 rx_ringp = (vnet_pseudo_rx_ring_t *)vresp->rx_ringp; in vnet_unbind_vgenring()
3047 vresp->rx_ringp = NULL; in vnet_unbind_vgenring()
3049 if (rx_ringp != NULL && (rx_ringp->state & VNET_RXRING_LDC_GUEST)) { in vnet_unbind_vgenring()
3051 mac_group_rem_ring(rx_grp->handle, rx_ringp->handle); in vnet_unbind_vgenring()
3053 rx_ringp->hw_rh = NULL; in vnet_unbind_vgenring()
3054 rx_ringp->state &= ~VNET_RXRING_LDC_GUEST; in vnet_unbind_vgenring()
3057 vnet_free_pseudo_rx_ring(vnetp, rx_ringp); in vnet_unbind_vgenring()