[PATCH v4 0/7] net/iavf: harden reset recovery and data path on link flap
Bruce Richardson
bruce.richardson at intel.com
Tue Aug 18 16:32:50 CEST 2026
On Tue, Aug 18, 2026 at 04:57:25AM +0000, Anurag Mandal wrote:
> V4-changes:
> - Addressed Bruce Richardson's review comment on Patch-3
> - Removed Tx drain on link down
>
> V3-changes:
> - Addressed Ciara Loftus's review comments on Fixes tag
> - Added missing watchdog enable in Patch-6
> - Removed extra space in commit msg of Patch-5
>
> V2-changes:
> - Addressed Ciara Loftus's review comments.
> - Split Watchdog and flow flush from other patches.
> - Shortened multiple comments and commit msg
> - Prevented iavf_resume_pending_start() looping
>
> During PF-initiated reset or a remote/ToR switch link-flap, the VF
> might miss the reset event, race on the no_poll gate, leak in-flight
> Tx descriptors, and stay down if dev_start ran before the PF VSI was
> ready.
>
> This patch series build on the earlier reset-recovery fixes with the
> following:
>
> - Reset detection: complement the ARQLEN1 check with VFGEN_RSTAT
> (VIRTCHNL_VFR_INPROGRESS) and poll at a 5 ms interval, matching the
> kernel iavf driver, so fast ARQ flips are not missed. When the VFR
> is still not observed, recover anyway instead of bailing out,
> keeping PF and VF state in sync.
>
> - no_poll: make the flag atomic (RTE_ATOMIC) with release/acquire
> ordering so the data-plane lcores observe gate changes reliably.
>
> - Tx drain: add iavf_dev_tx_drain() to flush in-flight Tx descriptors
> on impending-reset events before teardown, preventing
> MDD events and descriptor leaks.
>
> - Deferred start: when dev_start fails during recovery (PF VSI inactive),
> defer it via start_pending and resume on the next link-up event so the
> VF comes back without manual intervention.
>
> - AdminQ: discard zeroed (opcode 0) descriptors seen during PF-initiated
> resets to avoid the "Request 0 is not supported" log flood.
>
> - Watchdog: keep watchdog armed for the whole reset window
>
> - Flow flush: skip flow flush during PF-initiated reset
>
> Anurag Mandal (7):
> net/iavf: discard empty AdminQ descriptors on reset
> net/iavf: defer device start when PF VSI not ready
> net/iavf: drain in-flight Tx before reset
> net/iavf: change no_poll flag to atomic
> net/iavf: improve VF reset detection on fast ARQ flip
> net/iavf: keep watchdog armed for the whole reset window
> net/iavf: skip flow flush during PF-initiated reset
>
Series applied to dpdk-next-net-intel.
Thanks,
/Bruce
More information about the dev
mailing list