net/enic: fix max packet length check
authorJohn Daley <johndale@cisco.com>
Tue, 1 Nov 2016 18:08:28 +0000 (11:08 -0700)
committerThomas Monjalon <thomas.monjalon@6wind.com>
Mon, 7 Nov 2016 17:01:11 +0000 (18:01 +0100)
When the device was configured with an explicit maximum packet length,
it would fail if the value was greater than MTU configured in CIMC/UCSM
(plus L2 header length). It should have been compared against maximum
allowed by the device.

Fixes: bb34ffb848a0 ("net/enic: determine max egress packet size and max MTU")

Signed-off-by: John Daley <johndale@cisco.com>
drivers/net/enic/enic_ethdev.c

index bcf83d4..2b154ec 100644 (file)
@@ -463,8 +463,7 @@ static void enicpmd_dev_info_get(struct rte_eth_dev *eth_dev,
        device_info->max_rx_queues = enic->conf_rq_count / 2;
        device_info->max_tx_queues = enic->conf_wq_count;
        device_info->min_rx_bufsize = ENIC_MIN_MTU;
-       device_info->max_rx_pktlen = enic->rte_dev->data->mtu
-                                  + ETHER_HDR_LEN + 4;
+       device_info->max_rx_pktlen = enic->max_mtu + ETHER_HDR_LEN + 4;
        device_info->max_mac_addrs = 1;
        device_info->rx_offload_capa =
                DEV_RX_OFFLOAD_VLAN_STRIP |