From: Maayan Kashani <mkashani@nvidia.com>
To: <dev@dpdk.org>
Cc: <mkashani@nvidia.com>, <dsosnowski@nvidia.com>,
<rasland@nvidia.com>, Jiayu Hu <hujiayu.hu@foxmail.com>
Subject: [PATCH 2/3] gro: cross NUMA support
Date: Tue, 17 Jun 2025 18:42:53 +0300 [thread overview]
Message-ID: <20250617154255.190093-2-mkashani@nvidia.com> (raw)
In-Reply-To: <20250617154255.190093-1-mkashani@nvidia.com>
when using --no-numa option,
gro should be initiated with SOCKET_ID_ANY
to allow using cross NUMA.
Changed socket_id field in struct rte_gro_param from uint16 to
int32 to support negative value -1 (== SOCKET_ID_ANY).
Signed-off-by: Maayan Kashani <mkashani@nvidia.com>
---
lib/gro/gro_tcp4.c | 2 +-
lib/gro/gro_tcp4.h | 2 +-
lib/gro/gro_tcp6.c | 2 +-
lib/gro/gro_tcp6.h | 2 +-
lib/gro/gro_udp4.c | 2 +-
lib/gro/gro_udp4.h | 2 +-
lib/gro/gro_vxlan_tcp4.c | 2 +-
lib/gro/gro_vxlan_tcp4.h | 2 +-
lib/gro/gro_vxlan_udp4.c | 2 +-
lib/gro/gro_vxlan_udp4.h | 2 +-
lib/gro/rte_gro.c | 2 +-
lib/gro/rte_gro.h | 2 +-
12 files changed, 12 insertions(+), 12 deletions(-)
diff --git a/lib/gro/gro_tcp4.c b/lib/gro/gro_tcp4.c
index 855cc7a71d3..2352e2d9e64 100644
--- a/lib/gro/gro_tcp4.c
+++ b/lib/gro/gro_tcp4.c
@@ -10,7 +10,7 @@
#include "gro_tcp_internal.h"
void *
-gro_tcp4_tbl_create(uint16_t socket_id,
+gro_tcp4_tbl_create(int32_t socket_id,
uint16_t max_flow_num,
uint16_t max_item_per_flow)
{
diff --git a/lib/gro/gro_tcp4.h b/lib/gro/gro_tcp4.h
index 245e5da4861..0b695f1e906 100644
--- a/lib/gro/gro_tcp4.h
+++ b/lib/gro/gro_tcp4.h
@@ -57,7 +57,7 @@ struct gro_tcp4_tbl {
* - Return the table pointer on success.
* - Return NULL on failure.
*/
-void *gro_tcp4_tbl_create(uint16_t socket_id,
+void *gro_tcp4_tbl_create(int32_t socket_id,
uint16_t max_flow_num,
uint16_t max_item_per_flow);
diff --git a/lib/gro/gro_tcp6.c b/lib/gro/gro_tcp6.c
index ab4cd6c68bf..10e97b006db 100644
--- a/lib/gro/gro_tcp6.c
+++ b/lib/gro/gro_tcp6.c
@@ -10,7 +10,7 @@
#include "gro_tcp_internal.h"
void *
-gro_tcp6_tbl_create(uint16_t socket_id,
+gro_tcp6_tbl_create(int32_t socket_id,
uint16_t max_flow_num,
uint16_t max_item_per_flow)
{
diff --git a/lib/gro/gro_tcp6.h b/lib/gro/gro_tcp6.h
index acf3971bb6e..1be01db9194 100644
--- a/lib/gro/gro_tcp6.h
+++ b/lib/gro/gro_tcp6.h
@@ -60,7 +60,7 @@ struct gro_tcp6_tbl {
* - Return the table pointer on success.
* - Return NULL on failure.
*/
-void *gro_tcp6_tbl_create(uint16_t socket_id,
+void *gro_tcp6_tbl_create(int32_t socket_id,
uint16_t max_flow_num,
uint16_t max_item_per_flow);
diff --git a/lib/gro/gro_udp4.c b/lib/gro/gro_udp4.c
index 019e05bcdea..ed738f60ece 100644
--- a/lib/gro/gro_udp4.c
+++ b/lib/gro/gro_udp4.c
@@ -9,7 +9,7 @@
#include "gro_udp4.h"
void *
-gro_udp4_tbl_create(uint16_t socket_id,
+gro_udp4_tbl_create(int32_t socket_id,
uint16_t max_flow_num,
uint16_t max_item_per_flow)
{
diff --git a/lib/gro/gro_udp4.h b/lib/gro/gro_udp4.h
index 6467d7bc3b8..ad423731d50 100644
--- a/lib/gro/gro_udp4.h
+++ b/lib/gro/gro_udp4.h
@@ -98,7 +98,7 @@ struct gro_udp4_tbl {
* - Return the table pointer on success.
* - Return NULL on failure.
*/
-void *gro_udp4_tbl_create(uint16_t socket_id,
+void *gro_udp4_tbl_create(int32_t socket_id,
uint16_t max_flow_num,
uint16_t max_item_per_flow);
diff --git a/lib/gro/gro_vxlan_tcp4.c b/lib/gro/gro_vxlan_tcp4.c
index 29d4a2e13d5..d258cdc8561 100644
--- a/lib/gro/gro_vxlan_tcp4.c
+++ b/lib/gro/gro_vxlan_tcp4.c
@@ -10,7 +10,7 @@
#include "gro_vxlan_tcp4.h"
void *
-gro_vxlan_tcp4_tbl_create(uint16_t socket_id,
+gro_vxlan_tcp4_tbl_create(int32_t socket_id,
uint16_t max_flow_num,
uint16_t max_item_per_flow)
{
diff --git a/lib/gro/gro_vxlan_tcp4.h b/lib/gro/gro_vxlan_tcp4.h
index 662db01a88d..beac866b5a1 100644
--- a/lib/gro/gro_vxlan_tcp4.h
+++ b/lib/gro/gro_vxlan_tcp4.h
@@ -77,7 +77,7 @@ struct gro_vxlan_tcp4_tbl {
* - Return the table pointer on success.
* - Return NULL on failure.
*/
-void *gro_vxlan_tcp4_tbl_create(uint16_t socket_id,
+void *gro_vxlan_tcp4_tbl_create(int32_t socket_id,
uint16_t max_flow_num,
uint16_t max_item_per_flow);
diff --git a/lib/gro/gro_vxlan_udp4.c b/lib/gro/gro_vxlan_udp4.c
index ca8cee270d3..13e69ec904b 100644
--- a/lib/gro/gro_vxlan_udp4.c
+++ b/lib/gro/gro_vxlan_udp4.c
@@ -10,7 +10,7 @@
#include "gro_vxlan_udp4.h"
void *
-gro_vxlan_udp4_tbl_create(uint16_t socket_id,
+gro_vxlan_udp4_tbl_create(int32_t socket_id,
uint16_t max_flow_num,
uint16_t max_item_per_flow)
{
diff --git a/lib/gro/gro_vxlan_udp4.h b/lib/gro/gro_vxlan_udp4.h
index d0452212430..a412a23fd1f 100644
--- a/lib/gro/gro_vxlan_udp4.h
+++ b/lib/gro/gro_vxlan_udp4.h
@@ -78,7 +78,7 @@ struct gro_vxlan_udp4_tbl {
* - Return the table pointer on success.
* - Return NULL on failure.
*/
-void *gro_vxlan_udp4_tbl_create(uint16_t socket_id,
+void *gro_vxlan_udp4_tbl_create(int32_t socket_id,
uint16_t max_flow_num,
uint16_t max_item_per_flow);
diff --git a/lib/gro/rte_gro.c b/lib/gro/rte_gro.c
index 578cc9b8010..776a553d5bb 100644
--- a/lib/gro/rte_gro.c
+++ b/lib/gro/rte_gro.c
@@ -14,7 +14,7 @@
#include "gro_vxlan_tcp4.h"
#include "gro_vxlan_udp4.h"
-typedef void *(*gro_tbl_create_fn)(uint16_t socket_id,
+typedef void *(*gro_tbl_create_fn)(int32_t socket_id,
uint16_t max_flow_num,
uint16_t max_item_per_flow);
typedef void (*gro_tbl_destroy_fn)(void *tbl);
diff --git a/lib/gro/rte_gro.h b/lib/gro/rte_gro.h
index c83dfd9ad14..572b41bf6fd 100644
--- a/lib/gro/rte_gro.h
+++ b/lib/gro/rte_gro.h
@@ -53,7 +53,7 @@ struct rte_gro_param {
/**< max flow number */
uint16_t max_item_per_flow;
/**< max packet number per flow */
- uint16_t socket_id;
+ int32_t socket_id;
/**< socket index for allocating GRO related data structures,
* like reassembly tables. When use rte_gro_reassemble_burst(),
* applications don't need to set this value.
--
2.21.0
next prev parent reply other threads:[~2025-06-17 15:43 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-06-17 15:42 [PATCH 1/3] doc: gro API changes notice Maayan Kashani
2025-06-17 15:42 ` Maayan Kashani [this message]
2025-06-17 15:42 ` [PATCH 3/3] app/testpmd: cross NUMA support for gro init Maayan Kashani
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20250617154255.190093-2-mkashani@nvidia.com \
--to=mkashani@nvidia.com \
--cc=dev@dpdk.org \
--cc=dsosnowski@nvidia.com \
--cc=hujiayu.hu@foxmail.com \
--cc=rasland@nvidia.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).