| 412 | } |
| 413 | |
| 414 | void |
| 415 | remove_tx_dynf_callback(portid_t portid) |
| 416 | { |
| 417 | struct rte_eth_dev_info dev_info; |
| 418 | uint16_t queue; |
| 419 | int ret; |
| 420 | |
| 421 | if (port_id_is_invalid(portid, ENABLED_WARN)) |
| 422 | return; |
| 423 | |
| 424 | ret = eth_dev_info_get_print_err(portid, &dev_info); |
| 425 | if (ret != 0) |
| 426 | return; |
| 427 | |
| 428 | for (queue = 0; queue < dev_info.nb_tx_queues; queue++) |
| 429 | if (ports[portid].tx_set_dynf_cb[queue]) { |
| 430 | rte_eth_remove_tx_callback(portid, queue, |
| 431 | ports[portid].tx_set_dynf_cb[queue]); |
| 432 | ports[portid].tx_set_dynf_cb[queue] = NULL; |
| 433 | } |
| 434 | } |
| 435 | |
| 436 | int |
| 437 | eth_dev_info_get_print_err(uint16_t port_id, |
no test coverage detected