[PATCH] net/i40e: fix missing error handling for QinQ filter

Bruce Richardson bruce.richardson at intel.com
Fri Sep 11 11:40:43 CEST 2026


When installing a QinQ tunnel filter, errors were not properly caught
leading to the situation where the app got a successful return code even
though the filter was not properly installed. Add an appropriate log
message and error return code on error to fix.

Fixes: 116b7910d641 ("net/i40e: add QinQ filter create function")
Cc: stable at dpdk.org

Signed-off-by: Bruce Richardson <bruce.richardson at intel.com>
---
 drivers/net/intel/i40e/i40e_ethdev.c | 8 +++++---
 1 file changed, 5 insertions(+), 3 deletions(-)

diff --git a/drivers/net/intel/i40e/i40e_ethdev.c b/drivers/net/intel/i40e/i40e_ethdev.c
index b6b2d291ee..c91abe7626 100644
--- a/drivers/net/intel/i40e/i40e_ethdev.c
+++ b/drivers/net/intel/i40e/i40e_ethdev.c
@@ -8597,9 +8597,11 @@ i40e_dev_consistent_tunnel_filter_set(struct i40e_pf *pf,
 	case I40E_TUNNEL_TYPE_QINQ:
 		if (!pf->qinq_replace_flag) {
 			ret = i40e_cloud_filter_qinq_create(pf);
-			if (ret < 0)
-				PMD_DRV_LOG(DEBUG,
-					    "QinQ tunnel filter already created.");
+			if (ret < 0) {
+				PMD_DRV_LOG(ERR, "Failed to create QinQ tunnel filter.");
+				/* ret is a raw i40e_status_code, not an errno */
+				return -ENOTSUP;
+			}
 			pf->qinq_replace_flag = 1;
 		}
 		/*	Add in the General fields the values of
-- 
2.53.0



More information about the stable mailing list