| 6505 | } |
| 6506 | |
| 6507 | static int |
| 6508 | get_fdir_info(portid_t port_id, struct rte_eth_fdir_info *fdir_info, |
| 6509 | struct rte_eth_fdir_stats *fdir_stat) |
| 6510 | { |
| 6511 | int ret = -ENOTSUP; |
| 6512 | |
| 6513 | #ifdef RTE_NET_I40E |
| 6514 | if (ret == -ENOTSUP) { |
| 6515 | ret = rte_pmd_i40e_get_fdir_info(port_id, fdir_info); |
| 6516 | if (!ret) |
| 6517 | ret = rte_pmd_i40e_get_fdir_stats(port_id, fdir_stat); |
| 6518 | } |
| 6519 | #endif |
| 6520 | #ifdef RTE_NET_IXGBE |
| 6521 | if (ret == -ENOTSUP) { |
| 6522 | ret = rte_pmd_ixgbe_get_fdir_info(port_id, fdir_info); |
| 6523 | if (!ret) |
| 6524 | ret = rte_pmd_ixgbe_get_fdir_stats(port_id, fdir_stat); |
| 6525 | } |
| 6526 | #endif |
| 6527 | switch (ret) { |
| 6528 | case 0: |
| 6529 | break; |
| 6530 | case -ENOTSUP: |
| 6531 | fprintf(stderr, "\n FDIR is not supported on port %-2d\n", |
| 6532 | port_id); |
| 6533 | break; |
| 6534 | default: |
| 6535 | fprintf(stderr, "programming error: (%s)\n", strerror(-ret)); |
| 6536 | break; |
| 6537 | } |
| 6538 | return ret; |
| 6539 | } |
| 6540 | |
| 6541 | void |
| 6542 | fdir_get_infos(portid_t port_id) |
no test coverage detected