[dpdk-stable] [PATCH v6] app/testpmd: fix setting maximum packet length

Ferruh Yigit ferruh.yigit at intel.com
Fri Jan 29 10:34:45 CET 2021


On 1/28/2021 12:07 PM, Ferruh Yigit wrote:
> From: Steve Yang <stevex.yang at intel.com>
> 
> "port config all max-pkt-len" command fails because it doesn't set the
> 'DEV_RX_OFFLOAD_JUMBO_FRAME' offload flag properly.
> 
> Commit in the fixes line moved the 'DEV_RX_OFFLOAD_JUMBO_FRAME' offload
> flag update from 'cmd_config_max_pkt_len_parsed()' to 'init_config()'.
> 'init_config()' function is only called during testpmd startup, but the
> flag status needs to be calculated whenever 'max_rx_pkt_len' changes.
> 
> The issue can be reproduced as [1], where the 'max-pkt-len' reduced and
> 'DEV_RX_OFFLOAD_JUMBO_FRAME' offload flag should be cleared but it
> didn't.
> 
> Adding the 'update_jumbo_frame_offload()' helper function to update
> 'DEV_RX_OFFLOAD_JUMBO_FRAME' offload flag and 'max_rx_pkt_len'. This
> function is called both by 'init_config()' and
> 'cmd_config_max_pkt_len_parsed()'.
> 
> Default 'max-pkt-len' value set to zero, 'update_jumbo_frame_offload()'
> updates it to "RTE_ETHER_MTU + PMD specific Ethernet overhead" when it
> is zero.
> If '--max-pkt-len=N' argument provided, it will be used instead.
> And with each "port config all max-pkt-len" command, the
> 'DEV_RX_OFFLOAD_JUMBO_FRAME' offload flag, 'max-pkt-len' and MTU is
> updated.
> 
> [1]
> --------------------------------------------------------------------------
> dpdk-testpmd -c 0xf -n 4 -- -i --max-pkt-len=9000 --tx-offloads=0x8000
> 	--rxq=4 --txq=4 --disable-rss
> testpmd>  set verbose 3
> testpmd>  port stop all
> testpmd>  port config all max-pkt-len 1518
> testpmd>  port start all
> 
> // Got fail error info without this patch
> Configuring Port 0 (socket 1)
> Ethdev port_id=0 rx_queue_id=0, new added offloads 0x800 must be
> within per-queue offload capabilities 0x0 in rte_eth_rx_queue_setup()
> Fail to configure port 0 rx queues //<-- Fail error info;
> --------------------------------------------------------------------------
> 
> Bugzilla ID: 625
> Fixes: 761c4d66900f ("app/testpmd: fix max Rx packet length for VLAN packets")
> Cc: stable at dpdk.org
> 
> Signed-off-by: Steve Yang <stevex.yang at intel.com>
> Signed-off-by: Ferruh Yigit <ferruh.yigit at intel.com>
> Acked-by: Lance Richardson <lance.richardson at broadcom.com>
> Acked-by: Wisam Jaddo <wisamm at nvidia.com>
> Acked-by: Xiaoyun Li <xiaoyun.li at intel.com>
> Tested-by: Bo Chen <box.c.chen at intel.com>

Applied to dpdk-next-net/main, thanks.



More information about the stable mailing list