Signed-off-by: David Marchand <david.marchand at 6wind.com>
---
 lib/librte_pmd_e1000/em_rxtx.c  |    4 ++++
 lib/librte_pmd_e1000/igb_rxtx.c |   14 ++++++++++++++
 2 files changed, 18 insertions(+)

diff --git a/lib/librte_pmd_e1000/em_rxtx.c b/lib/librte_pmd_e1000/em_rxtx.c
index 83ecb33..a6cea32 100644
--- a/lib/librte_pmd_e1000/em_rxtx.c
+++ b/lib/librte_pmd_e1000/em_rxtx.c
@@ -1707,6 +1707,8 @@ eth_em_rx_init(struct rte_eth_dev *dev)
                 */
                if (dev->data->dev_conf.rxmode.jumbo_frame ||
                                rctl_bsize < ETHER_MAX_LEN) {
+                       if (!dev->data->scattered_rx)
+                               PMD_INIT_LOG(DEBUG, "forcing scatter mode\n");
                        dev->rx_pkt_burst =
                                (eth_rx_burst_t)eth_em_recv_scattered_pkts;
                        dev->data->scattered_rx = 1;
@@ -1714,6 +1716,8 @@ eth_em_rx_init(struct rte_eth_dev *dev)
        }

        if (dev->data->dev_conf.rxmode.enable_scatter) {
+               if (!dev->data->scattered_rx)
+                       PMD_INIT_LOG(DEBUG, "forcing scatter mode\n");
                dev->rx_pkt_burst = eth_em_recv_scattered_pkts;
                dev->data->scattered_rx = 1;
        }
diff --git a/lib/librte_pmd_e1000/igb_rxtx.c b/lib/librte_pmd_e1000/igb_rxtx.c
index 5ca06c9..1d8f74a 100644
--- a/lib/librte_pmd_e1000/igb_rxtx.c
+++ b/lib/librte_pmd_e1000/igb_rxtx.c
@@ -1978,6 +1978,9 @@ eth_igb_rx_init(struct rte_eth_dev *dev)
                        /* It adds dual VLAN length for supporting dual VLAN */
                        if ((dev->data->dev_conf.rxmode.max_rx_pkt_len +
                                                2 * VLAN_TAG_SIZE) > buf_size){
+                               if (!dev->data->scattered_rx)
+                                       PMD_INIT_LOG(DEBUG,
+                                                    "forcing scatter mode\n");
                                dev->rx_pkt_burst = eth_igb_recv_scattered_pkts;
                                dev->data->scattered_rx = 1;
                        }
@@ -1987,6 +1990,8 @@ eth_igb_rx_init(struct rte_eth_dev *dev)
                         */
                        if ((rctl_bsize == 0) || (rctl_bsize > buf_size))
                                rctl_bsize = buf_size;
+                       if (!dev->data->scattered_rx)
+                               PMD_INIT_LOG(DEBUG, "forcing scatter mode\n");
                        dev->rx_pkt_burst = eth_igb_recv_scattered_pkts;
                        dev->data->scattered_rx = 1;
                }
@@ -2008,6 +2013,8 @@ eth_igb_rx_init(struct rte_eth_dev *dev)
        }

        if (dev->data->dev_conf.rxmode.enable_scatter) {
+               if (!dev->data->scattered_rx)
+                       PMD_INIT_LOG(DEBUG, "forcing scatter mode\n");
                dev->rx_pkt_burst = eth_igb_recv_scattered_pkts;
                dev->data->scattered_rx = 1;
        }
@@ -2242,6 +2249,9 @@ eth_igbvf_rx_init(struct rte_eth_dev *dev)
                        /* It adds dual VLAN length for supporting dual VLAN */
                        if ((dev->data->dev_conf.rxmode.max_rx_pkt_len +
                                                2 * VLAN_TAG_SIZE) > buf_size){
+                               if (!dev->data->scattered_rx)
+                                       PMD_INIT_LOG(DEBUG,
+                                                    "forcing scatter mode\n");
                                dev->rx_pkt_burst = eth_igb_recv_scattered_pkts;
                                dev->data->scattered_rx = 1;
                        }
@@ -2251,6 +2261,8 @@ eth_igbvf_rx_init(struct rte_eth_dev *dev)
                         */
                        if ((rctl_bsize == 0) || (rctl_bsize > buf_size))
                                rctl_bsize = buf_size;
+                       if (!dev->data->scattered_rx)
+                               PMD_INIT_LOG(DEBUG, "forcing scatter mode\n");
                        dev->rx_pkt_burst = eth_igb_recv_scattered_pkts;
                        dev->data->scattered_rx = 1;
                }
@@ -2282,6 +2294,8 @@ eth_igbvf_rx_init(struct rte_eth_dev *dev)
        }

        if (dev->data->dev_conf.rxmode.enable_scatter) {
+               if (!dev->data->scattered_rx)
+                       PMD_INIT_LOG(DEBUG, "forcing scatter mode\n");
                dev->rx_pkt_burst = eth_igb_recv_scattered_pkts;
                dev->data->scattered_rx = 1;
        }
-- 
1.7.10.4

Reply via email to