Move empty segment case processing to debug mode.

Signed-off-by: Matan Azrad <ma...@mellanox.com>
---
 drivers/net/mlx4/mlx4_rxtx.c | 9 ++++++---
 1 file changed, 6 insertions(+), 3 deletions(-)

diff --git a/drivers/net/mlx4/mlx4_rxtx.c b/drivers/net/mlx4/mlx4_rxtx.c
index 482c399..c005a41 100644
--- a/drivers/net/mlx4/mlx4_rxtx.c
+++ b/drivers/net/mlx4/mlx4_rxtx.c
@@ -305,15 +305,18 @@ static int handle_multi_segs(struct rte_mbuf *buf,
                        return -1;
                }
 #endif /* NDEBUG */
-               if (likely(sbuf->data_len)) {
-                       byte_count = rte_cpu_to_be_32(sbuf->data_len);
-               } else {
+               byte_count = rte_cpu_to_be_32(sbuf->data_len);
+#ifndef NDEBUG
+               if (unlikely(!sbuf->data_len)) {
+                       DEBUG("%p: Empty segment is not allowed",
+                                       (void *)txq);
                        /*
                         * Zero length segment is treated as inline segment
                         * with zero data.
                         */
                        byte_count = RTE_BE32(0x80000000);
                }
+#endif /* NDEBUG */
                /*
                 * If the data segment is not at the beginning of a
                 * Tx basic block (TXBB) then write the byte count,
-- 
1.8.3.1

Reply via email to