* DPDK callback to release a Rx queue. * * @param dev * Pointer to Ethernet device structure. * @param idx * Receive queue index. */
| 911 | * Receive queue index. |
| 912 | */ |
| 913 | void |
| 914 | mlx4_rx_queue_release(struct rte_eth_dev *dev, uint16_t idx) |
| 915 | { |
| 916 | struct rxq *rxq = dev->data->rx_queues[idx]; |
| 917 | |
| 918 | if (rxq == NULL) |
| 919 | return; |
| 920 | dev->data->rx_queues[idx] = NULL; |
| 921 | DEBUG("%p: removing Rx queue %hu from list", (void *)dev, idx); |
| 922 | MLX4_ASSERT(!rxq->cq); |
| 923 | MLX4_ASSERT(!rxq->wq); |
| 924 | MLX4_ASSERT(!rxq->wqes); |
| 925 | MLX4_ASSERT(!rxq->rq_db); |
| 926 | if (rxq->channel) |
| 927 | claim_zero(mlx4_glue->destroy_comp_channel(rxq->channel)); |
| 928 | mlx4_mr_btree_free(&rxq->mr_ctrl.cache_bh); |
| 929 | rte_free(rxq); |
| 930 | } |
no test coverage detected