> -----Original Message----- > From: dev [mailto:dev-boun...@dpdk.org] On Behalf Of Wu, Jingjing > Sent: Monday, November 28, 2016 10:20 AM > To: Michael Bieniek <michaelbieniekd...@gmail.com>; Zhang, Helin > <helin.zh...@intel.com> > Cc: dev@dpdk.org > Subject: Re: [dpdk-dev] [PATCH] i40e: fix oversize packet counter not > incrementing for large packets > > > > > -----Original Message----- > > From: Michael Bieniek [mailto:michaelbieniekd...@gmail.com] > > Sent: Saturday, November 26, 2016 2:21 AM > > To: Zhang, Helin <helin.zh...@intel.com>; Wu, Jingjing > > <jingjing...@intel.com> > > Cc: dev@dpdk.org; Michael Bieniek <michaelbieniekd...@gmail.com> > > Subject: [PATCH] i40e: fix oversize packet counter not incrementing > > for large packets > > > > The XL710 requires that the Set MAC Config command be used to define > > the maximum frame size in order for the Receive Oversize Count > > register > > (GLPRT_ROC) to be incremented for packets received that are greater > > than the MTU. Without this change, the XL710 will drop the oversized > > packets without incrementing the corresponding counter. > > > > Signed-off-by: Michael Bieniek <michaelbieniekd...@gmail.com> > > --- > > drivers/net/i40e/i40e_ethdev.c | 2 ++ > > 1 file changed, 2 insertions(+) > > > > diff --git a/drivers/net/i40e/i40e_ethdev.c > > b/drivers/net/i40e/i40e_ethdev.c index 67778ba..c11c80b 100644 > > --- a/drivers/net/i40e/i40e_ethdev.c > > +++ b/drivers/net/i40e/i40e_ethdev.c > > @@ -9709,6 +9709,7 @@ static int > > i40e_dev_mtu_set(struct rte_eth_dev *dev, uint16_t mtu) { > > struct i40e_pf *pf = I40E_DEV_PRIVATE_TO_PF(dev->data- > > >dev_private); > > + struct i40e_hw *hw = I40E_DEV_PRIVATE_TO_HW(dev->data- > > >dev_private); > > struct rte_eth_dev_data *dev_data = pf->dev_data; > > uint32_t frame_size = mtu + ETHER_HDR_LEN > > + ETHER_CRC_LEN + I40E_VLAN_TAG_SIZE; @@ - > > 9732,6 +9733,7 @@ i40e_dev_mtu_set(struct rte_eth_dev *dev, uint16_t > mtu) > > dev_data->dev_conf.rxmode.jumbo_frame = 0; > > > > dev_data->dev_conf.rxmode.max_rx_pkt_len = frame_size; > > + i40e_aq_set_mac_config(hw, frame_size, TRUE, 0, NULL); > > > > return ret; > > } > > If you look into the eth_i40e_dev_init, you will find the mac's maximum > frame size Has been set to I40E_FRAME_SIZE_MAX (0x2600). Then the > changing of maximum frame size is by the setting in queues. > > If change the frame size on mac, the maximum frame size will not only works > on PF but also VF. >
NACK to this patch.