On Fri, Sep 11, 2026 at 01:16:57PM +0200, Burakov, Anatoly wrote:
> On 9/11/2026 11:40 AM, Bruce Richardson wrote:
> > 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: [email protected]
> > 
> > Signed-off-by: Bruce Richardson <[email protected]>
> > ---
> >   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
> 
> Returning ENOTSUP unconditionally seemed unwarranted to me, so I dug into
> the code to see what sort of errors we might see. The function in question
> actually mixes return values (default value is `-ENOTSUP` which is -95, but
> most errors from that codepath return `I40E_NOT_SUPPORTED` which is -64),
> but most of them indeed boil down to ENOTSUP (except for status returned
> from call into AQ command).
> 
> So, although not ideal, this is probably consistent with current
> implementation
> 
> Acked-by: Anatoly Burakov <[email protected]>
> 
Applied to dpdk-next-net-intel.

/Bruce

Reply via email to