Hello, I've been working on upgrading a custom dpdk application from dpdk 1.8.0 to dpdk 2.0.0.
I want to use FDIR to distribute the traffic based on IP to multiple queues, but I seem to get -95 (ENOTSUP) error code from *rte_eth_dev_fdir_set_masks. *I mention that this was all working fine with dpdk 1.8.0. Any ideas? Here's some general information on the setup: * OS: Ubuntu 14.04.1 * Kernel: 3.13.0-32 * NIC: Intel 82599ES 10 Gigabit Controller Here is the FDIR code: rte_fdir_masks fdirMask; memset(&fdirMask, 0, sizeof(fdirMask)); fdirMask.src_ipv4_mask = 0xffffffff; ret = rte_eth_dev_fdir_set_masks(portId, &fdirMask); Here s the port configuration: struct rte_eth_conf port_conf; memset(&port_conf, 0, sizeof(port_conf)); port_conf.txmode.mq_mode = ETH_MQ_TX_NONE; port_conf.fdir_conf.mode = RTE_FDIR_MODE_PERFECT; port_conf.fdir_conf.pballoc = RTE_FDIR_PBALLOC_64K; port_conf.fdir_conf.status = RTE_FDIR_REPORT_STATUS; Here is the dpdk nics status: Network devices using DPDK-compatible driver ============================================ 0000:05:00.1 '82599ES 10-Gigabit SFI/SFP+ Network Connection' drv=igb_uio unused= 0000:81:00.1 '82599ES 10-Gigabit SFI/SFP+ Network Connection' drv=igb_uio unused= Network devices using kernel driver =================================== 0000:02:00.0 'NetXtreme BCM5719 Gigabit Ethernet PCIe' if=em1 drv=tg3 unused=igb_uio *Active* 0000:02:00.1 'NetXtreme BCM5719 Gigabit Ethernet PCIe' if=em2 drv=tg3 unused=igb_uio 0000:02:00.2 'NetXtreme BCM5719 Gigabit Ethernet PCIe' if=em3 drv=tg3 unused=igb_uio 0000:02:00.3 'NetXtreme BCM5719 Gigabit Ethernet PCIe' if=em4 drv=tg3 unused=igb_uio 0000:05:00.0 '82599ES 10-Gigabit SFI/SFP+ Network Connection' if=p1p1 drv=ixgbe unused=igb_uio 0000:81:00.0 '82599ES 10-Gigabit SFI/SFP+ Network Connection' if=p6p1 drv=ixgbe unused=igb_uio Other network devices ===================== <none> Here is the last part of the debug info: PMD: ixgbe_setup_fc(): ixgbe_setup_fc PMD: ixgbe_setup_fc(): Set up FC; PCS1GLCTL = 0x0204000E PMD: ixgbe_setup_fc(): Set up FC; PCS1GLCTL = 0x0204000E PMD: ixgbe_verify_fw_version_82599(): ixgbe_verify_fw_version_82599 PMD: ixgbe_read_eeprom_82599(): ixgbe_read_eeprom_82599 PMD: ixgbe_read_eerd_buffer_generic(): ixgbe_read_eerd_buffer_generic PMD: ixgbe_init_eeprom_params_generic(): ixgbe_init_eeprom_params_generic PMD: ixgbe_poll_eerd_eewr_done(): ixgbe_poll_eerd_eewr_done PMD: ixgbe_read_eeprom_82599(): ixgbe_read_eeprom_82599 PMD: ixgbe_read_eerd_buffer_generic(): ixgbe_read_eerd_buffer_generic PMD: ixgbe_init_eeprom_params_generic(): ixgbe_init_eeprom_params_generic PMD: ixgbe_poll_eerd_eewr_done(): ixgbe_poll_eerd_eewr_done PMD: ixgbe_read_eeprom_82599(): ixgbe_read_eeprom_82599 PMD: ixgbe_read_eerd_buffer_generic(): ixgbe_read_eerd_buffer_generic PMD: ixgbe_init_eeprom_params_generic(): ixgbe_init_eeprom_params_generic PMD: ixgbe_poll_eerd_eewr_done(): ixgbe_poll_eerd_eewr_done PMD: ixgbe_dev_tx_init(): >> PMD: ixgbe_dev_rx_init(): >> PMD: ixgbe_set_rx_function(): Port[0] doesn't meet Vector Rx preconditions or RTE_IXGBE_INC_VECTOR is not enabled PMD: ixgbe_set_rx_function(): Rx Burst Bulk Alloc Preconditions are satisfied. Rx Burst Bulk Alloc function will be used on port=0. PMD: ixgbe_dev_rxtx_start(): >> PMD: ixgbe_dev_tx_queue_start(): >> PMD: ixgbe_dev_rx_queue_start(): >> PMD: ixgbe_dev_rx_queue_start(): >> PMD: ixgbe_dev_rx_queue_start(): >> PMD: ixgbe_dev_rx_queue_start(): >> PMD: ixgbe_dev_rx_queue_start(): >> PMD: ixgbe_dev_rx_queue_start(): >> PMD: ixgbe_dev_rx_queue_start(): >> PMD: ixgbe_dev_rx_queue_start(): >> PMD: ixgbe_dev_rx_queue_start(): >> PMD: ixgbe_enable_rx_dma_82599(): ixgbe_enable_rx_dma_82599 PMD: ixgbe_disable_sec_rx_path_generic(): ixgbe_disable_sec_rx_path_generic PMD: ixgbe_enable_sec_rx_path_generic(): ixgbe_enable_sec_rx_path_generic PMD: ixgbe_check_mac_link_generic(): ixgbe_check_mac_link_generic PMD: ixgbe_get_link_capabilities_82599(): ixgbe_get_link_capabilities_82599 PMD: ixgbe_setup_mac_link_82599(): ixgbe_setup_mac_link_82599 PMD: ixgbe_get_link_capabilities_82599(): ixgbe_get_link_capabilities_82599 PMD: ixgbe_vlan_hw_strip_disable_all(): >> PMD: ixgbe_vlan_hw_filter_disable(): >> PMD: ixgbe_vlan_hw_extend_disable(): >> PMD: ixgbe_configure_dcb(): >> PMD: ixgbe_fdir_configure(): >> PMD: fdir_set_input_mask_82599(): >> PMD: fdir_enable_82599(): >> PMD: ixgbe_check_mac_link_generic(): ixgbe_check_mac_link_generic Any help would be appreciated. Have a nice day, Marian Barbu