[v5,08/20] net/ice: remove use of VLAs for Windows built code

Message ID 1731026691-1529-9-git-send-email-andremue@linux.microsoft.com (mailing list archive)
State Superseded, archived
Delegated to: Thomas Monjalon
Headers
Series remove use of VLAs for Windows |

Checks

Context Check Description
ci/checkpatch success coding style OK

Commit Message

Andre Muezerie Nov. 8, 2024, 12:44 a.m. UTC
From: Konstantin Ananyev <konstantin.ananyev@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: stable@dpdk.org

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

Comments

Bruce Richardson Nov. 8, 2024, 8:51 a.m. UTC | #1
Title for this patch is incorrect. Does it belong merged with the next
patch in series?

On Thu, Nov 07, 2024 at 04:44:39PM -0800, Andre Muezerie wrote:
> From: Konstantin Ananyev <konstantin.ananyev@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: stable@dpdk.org
> 
> Signed-off-by: Konstantin Ananyev <konstantin.ananyev@huawei.com>
> Acked-by: Ferruh Yigit <ferruh.yigit@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.34.1
>
  
Konstantin Ananyev Nov. 8, 2024, 10:18 a.m. UTC | #2
> 
> Title for this patch is incorrect. Does it belong merged with the next
> patch in series?

Yes, seems like oringianl title get lost, I think it needs to be:
gro: fix overwrite unprocessed packets
https://patchwork.dpdk.org/project/dpdk/patch/20240523162604.2600-2-konstantin.v.ananyev@yandex.ru/

> 
> On Thu, Nov 07, 2024 at 04:44:39PM -0800, Andre Muezerie wrote:
> > From: Konstantin Ananyev <konstantin.ananyev@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: stable@dpdk.org
> >
> > Signed-off-by: Konstantin Ananyev <konstantin.ananyev@huawei.com>
> > Acked-by: Ferruh Yigit <ferruh.yigit@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.34.1
> >
  
Andre Muezerie Nov. 8, 2024, 9:17 p.m. UTC | #3
On Fri, Nov 08, 2024 at 08:51:00AM +0000, Bruce Richardson wrote:
> Title for this patch is incorrect. Does it belong merged with the next
> patch in series?
Indeed, I used the wrong title for this patch. I'll fix it in v6.
> 
> On Thu, Nov 07, 2024 at 04:44:39PM -0800, Andre Muezerie wrote:
> > From: Konstantin Ananyev <konstantin.ananyev@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: stable@dpdk.org
> > 
> > Signed-off-by: Konstantin Ananyev <konstantin.ananyev@huawei.com>
> > Acked-by: Ferruh Yigit <ferruh.yigit@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.34.1
> >
  
Andre Muezerie Nov. 8, 2024, 9:21 p.m. UTC | #4
On Fri, Nov 08, 2024 at 10:18:31AM +0000, Konstantin Ananyev wrote:
> 
> 
> > 
> > Title for this patch is incorrect. Does it belong merged with the next
> > patch in series?
> 
> Yes, seems like oringianl title get lost, I think it needs to be:
> gro: fix overwrite unprocessed packets
> https://patchwork.dpdk.org/project/dpdk/patch/20240523162604.2600-2-konstantin.v.ananyev@yandex.ru/
> 
Yes, I made a mistake. I'll fix it in v6 alonmg with other small changes.

> > 
> > On Thu, Nov 07, 2024 at 04:44:39PM -0800, Andre Muezerie wrote:
> > > From: Konstantin Ananyev <konstantin.ananyev@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: stable@dpdk.org
> > >
> > > Signed-off-by: Konstantin Ananyev <konstantin.ananyev@huawei.com>
> > > Acked-by: Ferruh Yigit <ferruh.yigit@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.34.1
> > >
  

Patch

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) {