]> git.droids-corp.org - dpdk.git/blobdiff - drivers/net/mlx5/mlx5_ethdev.c
net/mlx: retrieve mbuf size through proper function
[dpdk.git] / drivers / net / mlx5 / mlx5_ethdev.c
index 243c35a7a7ec307dc43698c69af36e293851df2b..47d0862ee347b81efb29aa7073e1b887b69d25c8 100644 (file)
@@ -717,6 +717,7 @@ mlx5_dev_set_mtu(struct rte_eth_dev *dev, uint16_t mtu)
        /* Reconfigure each RX queue. */
        for (i = 0; (i != priv->rxqs_n); ++i) {
                struct rxq *rxq = (*priv->rxqs)[i];
+               unsigned int mb_len;
                unsigned int max_frame_len;
                int sp;
 
@@ -726,7 +727,9 @@ mlx5_dev_set_mtu(struct rte_eth_dev *dev, uint16_t mtu)
                 * toggle scattered support (sp) if necessary. */
                max_frame_len = (priv->mtu + ETHER_HDR_LEN +
                                 (ETHER_MAX_VLAN_FRAME_LEN - ETHER_MAX_LEN));
-               sp = (max_frame_len > (rxq->mb_len - RTE_PKTMBUF_HEADROOM));
+               mb_len = rte_pktmbuf_data_room_size(rxq->mp);
+               assert(mb_len >= RTE_PKTMBUF_HEADROOM);
+               sp = (max_frame_len > (mb_len - RTE_PKTMBUF_HEADROOM));
                /* Provide new values to rxq_setup(). */
                dev->data->dev_conf.rxmode.jumbo_frame = sp;
                dev->data->dev_conf.rxmode.max_rx_pkt_len = max_frame_len;