On 10/04/18 11:36, Pablo Cascón wrote:
Currently to RX jumbo packets fails for NICs not supporting scatter.
Scatter is not strictly needed for jumbo support on RX. This change
fixes the issue by only enabling scatter for NICs supporting it.

Reported-by: Louis Peens <[email protected]>
Signed-off-by: Pablo Cascón <[email protected]>
Reviewed-by: Simon Horman <[email protected]>
---
  lib/netdev-dpdk.c | 5 ++++-
  1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/lib/netdev-dpdk.c b/lib/netdev-dpdk.c
index ee39cbe..28b20b5 100644
--- a/lib/netdev-dpdk.c
+++ b/lib/netdev-dpdk.c
@@ -694,11 +694,14 @@ 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. */
      if (dev->mtu > ETHER_MTU) {
-        conf.rxmode.enable_scatter = 1;
+        rte_eth_dev_info_get(dev->port_id, &info);
+        if (info.rx_offload_capa & DEV_RX_OFFLOAD_SCATTER)
+            conf.rxmode.enable_scatter = 1;
      }
conf.rxmode.hw_ip_checksum = (dev->hw_ol_features &

Change looks good to me.


Acked-by: Eelco Chaudron <[email protected]>


_______________________________________________
dev mailing list
[email protected]
https://mail.openvswitch.org/mailman/listinfo/ovs-dev

Reply via email to