On Wed, Aug 05, 2026 at 12:57:35PM +0000, Ciara Loftus wrote:
> The promiscuous and all-multicast settings persist in hardware across
> a port stop/start and are only cleared by a VF reset. Despite this,
> the ethdev start path re-applied them on every `dev_start` through the
> config restore logic. Together with the driver's own restore after a
> reset, a reset followed by a start reprogrammed them twice and issued
> redundant requests to the PF.
> 
> Implement the `get_restore_flags` callback to clear
> `RTE_ETH_RESTORE_PROMISC` and `RTE_ETH_RESTORE_ALLMULTI` so ethdev
> skips them on start; the driver restores them only after a VF reset.
> A queue reconfiguration in `iavf_dev_configure` also triggers a reset,
> so the states are re-applied there too, except during reset recovery
> where the reset handler already restores them once.
> 
> Signed-off-by: Ciara Loftus <[email protected]>
> ---
>  drivers/net/intel/iavf/iavf_ethdev.c | 34 ++++++++++++++++++++++++++++
>  1 file changed, 34 insertions(+)
> 
Acked-by: Bruce Richardson <[email protected]>

Reply via email to