[PATCH] net/ixgbe: fix repeated Rx packet buffer shrink for FDIR

Burakov, Anatoly anatoly.burakov at intel.com
Fri Sep 25 11:47:16 CEST 2026


On 9/16/2026 3:58 PM, Zhang Tengfei wrote:
> Enabling Flow Director reduces RXPBSIZE to reserve SRAM for the
> filter table. Clearing the last FDIR rule set the mode back to
> none without restoring that buffer, so the next flow create ran
> configure again and subtracted the same amount a second time.
> 
> Keep the FDIR mode after rules are removed, and subtract RXPBSIZE
> only once until the next hardware reset.
> 
> Fixes: 301abd26b118 ("net/ixgbe: reset flow state on clear paths")
> Cc: stable at dpdk.org
> Signed-off-by: Zhang Tengfei <zhtfdev at gmail.com>
> ---

A general comment: instead of reducing/bringing things back and storing 
a flag noting whether we did, I would rather do the following:

0) store default rx pb size at init
1) on enabling FDIR, recalculate using that value minus FDIR table size
2) on disabling FDIR[*], restore the default
3) similarly, on enable/disable VMDq, recalculate and/or reset

[*] there is no "disable FDIR" call, only fdir flush which just flushes 
the FDIR tables but does not actually disable FDIR. arguably, we should 
convert it to "disable FDIR" by flushing FDIR *and* writing 0 to 
FDIRCTRL *and* restoring rx pb size to defaults. naturally, after 
running fdir disable function, FDIR will need to be reconfigured for 
next FDIR flow and get rx pb size recalculated again.

So, a bit of a refactor, but I think that would make way more sense.

-- 
Thanks,
Anatoly


More information about the stable mailing list