[PATCH v4 08/23] gro: include headers directly
Stephen Hemminger
stephen at networkplumber.org
Thu Aug 6 07:09:02 CEST 2026
The gro library was getting headers such as VXLAN implicitly
via rte_ethdev.h.
This will change, so include the needed headers directly.
Use iwyu to make sure all headers are covered.
Signed-off-by: Stephen Hemminger <stephen at networkplumber.org>
---
lib/gro/gro_tcp4.c | 9 ++++++++-
lib/gro/gro_tcp6.c | 9 ++++++++-
lib/gro/gro_vxlan_tcp4.c | 10 +++++++++-
lib/gro/gro_vxlan_udp4.c | 9 ++++++++-
lib/gro/rte_gro.c | 9 ++++++++-
5 files changed, 41 insertions(+), 5 deletions(-)
diff --git a/lib/gro/gro_tcp4.c b/lib/gro/gro_tcp4.c
index 855cc7a71d..3997fb8bf1 100644
--- a/lib/gro/gro_tcp4.c
+++ b/lib/gro/gro_tcp4.c
@@ -2,9 +2,16 @@
* Copyright(c) 2017 Intel Corporation
*/
+#include <stddef.h>
+
+#include <rte_branch_prediction.h>
+#include <rte_byteorder.h>
+#include <rte_common.h>
+#include <rte_ether.h>
#include <rte_malloc.h>
#include <rte_mbuf.h>
-#include <rte_ethdev.h>
+#include <rte_ip.h>
+#include <rte_tcp.h>
#include "gro_tcp4.h"
#include "gro_tcp_internal.h"
diff --git a/lib/gro/gro_tcp6.c b/lib/gro/gro_tcp6.c
index ab4cd6c68b..4e1ae596b7 100644
--- a/lib/gro/gro_tcp6.c
+++ b/lib/gro/gro_tcp6.c
@@ -2,9 +2,16 @@
* Copyright(c) 2023 Intel Corporation
*/
+#include <stdbool.h>
+
+#include <rte_branch_prediction.h>
+#include <rte_byteorder.h>
+#include <rte_common.h>
+#include <rte_ether.h>
#include <rte_malloc.h>
#include <rte_mbuf.h>
-#include <rte_ethdev.h>
+#include <rte_ip.h>
+#include <rte_tcp.h>
#include "gro_tcp6.h"
#include "gro_tcp_internal.h"
diff --git a/lib/gro/gro_vxlan_tcp4.c b/lib/gro/gro_vxlan_tcp4.c
index 29d4a2e13d..650d02eb74 100644
--- a/lib/gro/gro_vxlan_tcp4.c
+++ b/lib/gro/gro_vxlan_tcp4.c
@@ -2,9 +2,17 @@
* Copyright(c) 2018 Intel Corporation
*/
+#include <stddef.h>
+
+#include <rte_branch_prediction.h>
+#include <rte_byteorder.h>
+#include <rte_common.h>
#include <rte_malloc.h>
#include <rte_mbuf.h>
-#include <rte_ethdev.h>
+#include <rte_ether.h>
+#include <rte_vxlan.h>
+#include <rte_ip.h>
+#include <rte_tcp.h>
#include <rte_udp.h>
#include "gro_vxlan_tcp4.h"
diff --git a/lib/gro/gro_vxlan_udp4.c b/lib/gro/gro_vxlan_udp4.c
index ca8cee270d..bdfa8d6d20 100644
--- a/lib/gro/gro_vxlan_udp4.c
+++ b/lib/gro/gro_vxlan_udp4.c
@@ -2,9 +2,16 @@
* Copyright(c) 2020 Inspur Corporation
*/
+#include <stddef.h>
+
+#include <rte_branch_prediction.h>
+#include <rte_byteorder.h>
+#include <rte_common.h>
#include <rte_malloc.h>
#include <rte_mbuf.h>
-#include <rte_ethdev.h>
+#include <rte_ether.h>
+#include <rte_vxlan.h>
+#include <rte_ip.h>
#include <rte_udp.h>
#include "gro_vxlan_udp4.h"
diff --git a/lib/gro/rte_gro.c b/lib/gro/rte_gro.c
index 578cc9b801..5bccd3cbac 100644
--- a/lib/gro/rte_gro.c
+++ b/lib/gro/rte_gro.c
@@ -2,12 +2,19 @@
* Copyright(c) 2017 Intel Corporation
*/
+#include <stddef.h>
+
#include <eal_export.h>
+#include <rte_branch_prediction.h>
+#include <rte_common.h>
#include <rte_malloc.h>
+#include <rte_mbuf.h>
#include <rte_cycles.h>
-#include <rte_ethdev.h>
+#include <rte_ether.h>
+#include <rte_vxlan.h>
#include "rte_gro.h"
+#include "gro_tcp.h"
#include "gro_tcp4.h"
#include "gro_tcp6.h"
#include "gro_udp4.h"
--
2.53.0
More information about the dev
mailing list