* Release common RSS context resources. * * As the reverse of mlx4_rss_init(), this must be done after removing all * flow rules relying on indirection tables. * * @param priv * Pointer to private structure. */
| 452 | * Pointer to private structure. |
| 453 | */ |
| 454 | void |
| 455 | mlx4_rss_deinit(struct mlx4_priv *priv) |
| 456 | { |
| 457 | unsigned int i; |
| 458 | |
| 459 | if (!priv->rss_init) |
| 460 | return; |
| 461 | for (i = 0; i != ETH_DEV(priv)->data->nb_rx_queues; ++i) { |
| 462 | struct rxq *rxq = ETH_DEV(priv)->data->rx_queues[i]; |
| 463 | |
| 464 | if (rxq) { |
| 465 | MLX4_ASSERT(rxq->usecnt == 1); |
| 466 | mlx4_rxq_detach(rxq); |
| 467 | } |
| 468 | } |
| 469 | priv->rss_init = 0; |
| 470 | } |
| 471 | |
| 472 | /** |
| 473 | * Attach a user to a Rx queue. |
no test coverage detected