Seems that v2 is the same as v1, but v1 exposure the coding style issue. Anyway please add the change when update new version. Thanks.
Acked-by: Jeff Guo <jia....@intel.com> > -----Original Message----- > From: Yu, DapengX <dapengx...@intel.com> > Sent: Friday, February 19, 2021 6:01 PM > To: Guo, Jia <jia....@intel.com>; Wang, Haiyue <haiyue.w...@intel.com> > Cc: dev@dpdk.org; Yu, DapengX <dapengx...@intel.com>; sta...@dpdk.org > Subject: [PATCH v2] net/igc: remove MTU setting limitation > > From: Dapeng Yu <dapengx...@intel.com> > > Currently, if requested MTU is bigger than mbuf size and scattered receive is > not enabled, setting MTU to that value fails. > > This patch allows setting this special MTU when device is stopped, because > scattered_rx will be re-configured during next port start and driver may > enable scattered receive according new MTU value. > > After this patch, driver may select different receive function automatically > after MTU set, according MTU values selected. > > Fixes: a5aeb2b9e225 ("net/igc: support Rx and Tx") > Cc: sta...@dpdk.org > > Signed-off-by: Dapeng Yu <dapengx...@intel.com> > --- > drivers/net/igc/igc_ethdev.c | 10 ++++++---- > 1 file changed, 6 insertions(+), 4 deletions(-) > > diff --git a/drivers/net/igc/igc_ethdev.c b/drivers/net/igc/igc_ethdev.c index > dbaa7a83e..0ea6e2a04 100644 > --- a/drivers/net/igc/igc_ethdev.c > +++ b/drivers/net/igc/igc_ethdev.c > @@ -1590,12 +1590,14 @@ eth_igc_mtu_set(struct rte_eth_dev *dev, > uint16_t mtu) > return -EINVAL; > > /* > - * refuse mtu that requires the support of scattered packets when > - * this feature has not been enabled before. > + * If device is started, refuse mtu that requires the support of > + * scattered packets when this feature has not been enabled before. > */ > - if (!dev->data->scattered_rx && > - frame_size > dev->data->min_rx_buf_size - > RTE_PKTMBUF_HEADROOM) > + if (dev->data->dev_started && !dev->data->scattered_rx && > + frame_size > dev->data->min_rx_buf_size - > RTE_PKTMBUF_HEADROOM) { > + PMD_INIT_LOG(ERR, "Stop port first."); > return -EINVAL; > + } > > rctl = IGC_READ_REG(hw, IGC_RCTL); > > -- > 2.27.0