sfc: fix ARFS expiry check on EF10
Owing to a missing conditional, the result of rps_may_expire_flow() was being ignored and filters were being removed even if we'd decided not to expire them. Fixes: f8d6203780b7 ("sfc: ARFS filter IDs") Signed-off-by: Edward Cree <ecree@solarflare.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
ded8b9c761
commit
987c658a61
@ -4784,8 +4784,9 @@ expire:
|
||||
* will set rule->filter_id to EFX_ARFS_FILTER_ID_PENDING, meaning that
|
||||
* the rule is not removed by efx_rps_hash_del() below.
|
||||
*/
|
||||
ret = efx_ef10_filter_remove_internal(efx, 1U << spec->priority,
|
||||
filter_idx, true) == 0;
|
||||
if (ret)
|
||||
ret = efx_ef10_filter_remove_internal(efx, 1U << spec->priority,
|
||||
filter_idx, true) == 0;
|
||||
/* While we can't safely dereference rule (we dropped the lock), we can
|
||||
* still test it for NULL.
|
||||
*/
|
||||
|
Loading…
x
Reference in New Issue
Block a user