[dpdk-dev] net/enic: fix max packet length check

Message ID 20161101180828.1590-1-johndale@cisco.com (mailing list archive)
State Accepted, archived
Headers

Commit Message

John Daley (johndale) Nov. 1, 2016, 6:08 p.m. UTC
  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 | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)
  

Comments

Thomas Monjalon Nov. 7, 2016, 5 p.m. UTC | #1
2016-11-01 11:08, John Daley:
> 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>

Applied, thanks
  

Patch

diff --git a/drivers/net/enic/enic_ethdev.c b/drivers/net/enic/enic_ethdev.c
index bcf83d4..2b154ec 100644
--- a/drivers/net/enic/enic_ethdev.c
+++ b/drivers/net/enic/enic_ethdev.c
@@ -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 |