[ovs-dev] [PATCH] netdev-tc-offloads: Don't delete ufid mapping if fail to delete filter

Simon Horman simon.horman at netronome.com
Sat Oct 24 06:56:51 UTC 2020


On Wed, Oct 14, 2020 at 01:31:04PM +0300, Roi Dayan wrote:
> From: Jianbo Liu <jianbol at nvidia.com>
> 
> tc_replace_flower may fail, so the return value must be checked.
> If not zero, ufid can't be deleted. Otherwise the operations on this
> filter may fail because its ufid is not found.
> 
> Signed-off-by: Jianbo Liu <jianbol at nvidia.com>
> Reviewed-by: Roi Dayan <roid at nvidia.com>

Thanks and sorry for the delay.

This looks good to me and I have applied it to master, branch-2.14 and
branch-2.14. Please let me know if backports should also be considered
for older branches.

> ---
>  lib/netdev-offload-tc.c | 4 +++-
>  1 file changed, 3 insertions(+), 1 deletion(-)
> 
> diff --git a/lib/netdev-offload-tc.c b/lib/netdev-offload-tc.c
> index 18ff380f9861..e828a8683910 100644
> --- a/lib/netdev-offload-tc.c
> +++ b/lib/netdev-offload-tc.c
> @@ -198,7 +198,9 @@ del_filter_and_ufid_mapping(struct tcf_id *id, const ovs_u128 *ufid)
>      int err;
>  
>      err = tc_del_filter(id);
> -    del_ufid_tc_mapping(ufid);
> +    if (!err) {
> +        del_ufid_tc_mapping(ufid);
> +    }
>      return err;
>  }
>  
> -- 
> 2.8.4
> 


More information about the dev mailing list