Hello Wei, On Sat, Jul 6, 2019 at 6:26 PM Thomas Monjalon <tho...@monjalon.net> wrote:
> 06/07/2019 18:24, Thomas Monjalon: > > 04/07/2019 07:35, Wei Zhao: > > > When adding offloads from commandline, not only port > > > related configuration bits should be set, but also queue > > > related offloads configuration bits, or it will cause error. > > > For example, test in this process for ixgbe: > > > (1)./x86_64-native-linuxapp-gcc/app/testpmd -c 0x6 -n 4 > > > -- -i --portmask=0x1 --port-topology=loop --disable-crc-strip > > > (2)port stop all > > > (3)port config all crc-strip on > > > (4)port start all > > > we will see "Fail to configure port 0 rx queues" of warning info. > > > > I'm really surprised it was so much broken. > > I did not check the code. Someone else did? > > Adding more Cc for double check. > > Did not check the code yet, but the Fixes: line is about RX offloads, and you touched both rx and tx offloads. The incriminated commit comes from 18.02. I can't reproduce your issue with ixgbe ports. In 18.11, testpmd starts fine and accepts the configuration change. In master (before this change), I can see a different issue which has to do with global offloads vs per queue offloads: # ./master/app/testpmd -w 0000:03:00.0 -w 0000:03:00.1 -- -i --disable-crc-strip EAL: Detected 28 lcore(s) EAL: Detected 1 NUMA nodes EAL: Multi-process socket /var/run/dpdk/rte/mp_socket EAL: Selected IOVA mode 'PA' EAL: Probing VFIO support... EAL: VFIO support initialized EAL: PCI device 0000:03:00.0 on NUMA socket 0 EAL: probe driver: 8086:154d net_ixgbe EAL: using IOMMU type 1 (Type 1) EAL: Ignore mapping IO port bar(2) EAL: PCI device 0000:03:00.1 on NUMA socket 0 EAL: probe driver: 8086:154d net_ixgbe EAL: Ignore mapping IO port bar(2) Interactive-mode selected testpmd: create a new mbuf pool <mbuf_pool_socket_0>: n=155456, size=2176, socket=0 testpmd: preferred mempool ops selected: ring_mp_mc Configuring Port 0 (socket 0) Port 0: B4:96:91:1B:67:10 Configuring Port 1 (socket 0) Port 1: B4:96:91:1B:67:12 Checking link statuses... Done testpmd> port stop all Stopping ports... Checking link statuses... Done testpmd> port config all crc-strip on testpmd> port start all Configuring Port 0 (socket 0) Ethdev port_id=0 rx_queue_id=0, new added offloads 0x10000 must be within per-queue offload capabilities 0x1 in rte_eth_rx_queue_setup() Fail to configure port 0 rx queues Can you describe your setup, like which driver is used, and the full traces of testpmd ? Thanks. -- David Marchand