From: Konstantin Ananyev <konstantin.anan...@huawei.com>

gro_vxlan_tcp4_tbl_timeout_flush() is called without taking into account
that first entries in pkts[] can be already occupied by
un-processed packets.

Fixes: 74080d7dcf31 ("gro: support IPv6 for TCP")
Cc: sta...@dpdk.org

Signed-off-by: Konstantin Ananyev <konstantin.anan...@huawei.com>
Acked-by: Ferruh Yigit <ferruh.yi...@amd.com>
---
 lib/gro/rte_gro.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/lib/gro/rte_gro.c b/lib/gro/rte_gro.c
index d824eebd93..db86117609 100644
--- a/lib/gro/rte_gro.c
+++ b/lib/gro/rte_gro.c
@@ -327,7 +327,7 @@ rte_gro_reassemble_burst(struct rte_mbuf **pkts,
                /* Flush all packets from the tables */
                if (do_vxlan_tcp_gro) {
                        i += gro_vxlan_tcp4_tbl_timeout_flush(&vxlan_tcp_tbl,
-                                       0, pkts, nb_pkts);
+                                       0, &pkts[i], nb_pkts - i);
                }
 
                if (do_vxlan_udp_gro) {
-- 
2.47.2.vfs.0.1

Reply via email to