The jumbo frame used the 'RTE_ETHER_MAX_LEN' as boundary condition, this fix will change the boundary condition with 'RTE_ETHER_MTU' and overhead.
When the MTU(1500) set, the frame type of rx packet will be different if used different overhead, it will cause the consistency issue, and the normal packet will be dropped. Hence, using fixed value 'RTE_ETHER_MTU' can avoid this issue. Following scopes will be changed: - 'rte_ethdev' - 'app', e.g.: 'test-pmd'; - net PMDs which support VLAN tag(s) within overhead, e.g.: i40e; --- v2: - defined the 'RTE_ETHER_MTU + overhead' to 'driver_ETH_MAX_LEN'; - changed the 'mtu > RTE_ETHER_MTU' to 'frame_size > driver_ETH_MAX_LEN'; --- Steve Yang (22): ethdev: fix MTU size exceeds max rx packet length app/testpmd: fix max rx packet length for VLAN packets net/dpaa: fix the jumbo frame flag condition for mtu set net/dpaa2: fix the jumbo frame flag condition for mtu set net/e1000: fix the jumbo frame flag condition for mtu set net/hns3: fix the jumbo frame flag condition for mtu set net/i40e: fix the jumbo frame flag condition net/iavf: fix the jumbo frame flag condition net/ice: fix the jumbo frame flag condition net/ipn3ke: fix the jumbo frame flag condition for mtu set net/octeontx: fix the jumbo frame flag condition for mtu set net/octeontx2: fix the jumbo frame flag condition for mtu net/qede: fix the jumbo frame flag condition for mtu set net/sfc: fix the jumbo frame flag condition for mtu set net/thunderx: fix the jumbo frame flag condition for mtu set net/ixgbe: fix the jumbo frame flag condition net/cxgbe: fix the jumbo frame flag condition net/axgbe: fix the jumbo frame flag condition for mtu set net/enetc: fix the jumbo frame flag condition for mtu set net/hinic: fix the jumbo frame flag condition for mtu set net/nfp: fix the jumbo frame flag condition for mtu set net/liquidio: fix the jumbo frame flag condition for mtu set app/test-pmd/cmdline.c | 6 ------ app/test-pmd/config.c | 2 +- app/test-pmd/parameters.c | 7 ++----- app/test-pmd/testpmd.c | 20 ++++++++++++++++++++ drivers/net/axgbe/axgbe_ethdev.c | 2 +- drivers/net/axgbe/axgbe_ethdev.h | 6 ++++++ drivers/net/cxgbe/cxgbe.h | 4 ++++ drivers/net/cxgbe/cxgbe_ethdev.c | 4 ++-- drivers/net/dpaa/dpaa_ethdev.c | 2 +- drivers/net/dpaa/dpaa_ethdev.h | 4 ++++ drivers/net/dpaa2/dpaa2_ethdev.c | 2 +- drivers/net/dpaa2/dpaa2_ethdev.h | 4 ++++ drivers/net/e1000/e1000_ethdev.h | 2 +- drivers/net/e1000/em_ethdev.c | 5 ++--- drivers/net/e1000/igb_ethdev.c | 2 +- drivers/net/enetc/enetc.h | 4 ++++ drivers/net/enetc/enetc_ethdev.c | 2 +- drivers/net/hinic/hinic_pmd_ethdev.c | 5 ++++- drivers/net/hns3/hns3_ethdev.c | 2 +- drivers/net/hns3/hns3_ethdev_vf.c | 2 +- drivers/net/i40e/i40e_ethdev.c | 2 +- drivers/net/i40e/i40e_ethdev.h | 1 + drivers/net/i40e/i40e_ethdev_vf.c | 10 +++++----- drivers/net/i40e/i40e_fdir.c | 2 +- drivers/net/i40e/i40e_rxtx.c | 8 ++++---- drivers/net/iavf/iavf.h | 1 + drivers/net/iavf/iavf_ethdev.c | 10 +++++----- drivers/net/ice/ice_dcf_ethdev.c | 8 ++++---- drivers/net/ice/ice_ethdev.c | 2 +- drivers/net/ice/ice_ethdev.h | 1 + drivers/net/ice/ice_rxtx.c | 10 +++++----- drivers/net/ipn3ke/ipn3ke_ethdev.h | 1 + drivers/net/ipn3ke/ipn3ke_representor.c | 2 +- drivers/net/ixgbe/ixgbe_ethdev.c | 2 +- drivers/net/ixgbe/ixgbe_ethdev.h | 3 +++ drivers/net/ixgbe/ixgbe_pf.c | 2 +- drivers/net/liquidio/lio_ethdev.c | 2 +- drivers/net/liquidio/lio_ethdev.h | 3 +++ drivers/net/nfp/nfp_net.c | 2 +- drivers/net/octeontx/octeontx_ethdev.c | 2 +- drivers/net/octeontx/octeontx_ethdev.h | 1 + drivers/net/octeontx2/otx2_ethdev.h | 2 ++ drivers/net/octeontx2/otx2_ethdev_ops.c | 2 +- drivers/net/qede/qede_ethdev.c | 2 +- drivers/net/qede/qede_rxtx.h | 1 + drivers/net/sfc/sfc_ethdev.c | 2 +- drivers/net/thunderx/base/nicvf_hw_defs.h | 1 + drivers/net/thunderx/nicvf_ethdev.c | 2 +- lib/librte_ethdev/rte_ethdev.c | 21 ++++++++++++++++++--- 49 files changed, 130 insertions(+), 65 deletions(-) -- 2.17.1