On 04/27/2018 05:40 PM, Pablo Cascón wrote: > Currently to RX jumbo packets fails for NICs not supporting scatter. > Scatter is not strictly needed for jumbo RX support. This change fixes > the issue by not enabling scatter only for the PMD/NIC known not to > need it to support jumbo RX. >
Acked-by: Kevin Traynor <ktray...@redhat.com> > Note: this change is temporary and not needed for later releases OVS/DPDK > > Reported-by: Louis Peens <louis.pe...@netronome.com> > Signed-off-by: Pablo Cascón <pablo.cas...@netronome.com> > Reviewed-by: Simon Horman <simon.hor...@netronome.com> > --- > lib/netdev-dpdk.c | 14 +++++++++++--- > 1 file changed, 11 insertions(+), 3 deletions(-) > > diff --git a/lib/netdev-dpdk.c b/lib/netdev-dpdk.c > index ee39cbe..fdc8f66 100644 > --- a/lib/netdev-dpdk.c > +++ b/lib/netdev-dpdk.c > @@ -694,11 +694,19 @@ dpdk_eth_dev_queue_setup(struct netdev_dpdk *dev, int > n_rxq, int n_txq) > int diag = 0; > int i; > struct rte_eth_conf conf = port_conf; > + struct rte_eth_dev_info info; > > - /* For some NICs (e.g. Niantic), scatter_rx mode needs to be explicitly > - * enabled. */ > + /* As of DPDK 17.11.1 a few PMDs require to explicitly enable > + * scatter to support jumbo RX. Checking the offload capabilities > + * is not an option as PMDs are not required yet to report > + * them. The only reliable info is the driver name and knowledge > + * (testing or code review). Listing all such PMDs feels harder > + * than highlighting the one known not to need scatter */ > if (dev->mtu > ETHER_MTU) { > - conf.rxmode.enable_scatter = 1; > + rte_eth_dev_info_get(dev->port_id, &info); > + if (strncmp(info.driver_name, "net_nfp", 6)) { > + conf.rxmode.enable_scatter = 1; > + } > } > > conf.rxmode.hw_ip_checksum = (dev->hw_ol_features & > _______________________________________________ dev mailing list d...@openvswitch.org https://mail.openvswitch.org/mailman/listinfo/ovs-dev