summaryrefslogtreecommitdiffstats
path: root/net/xfrm
diff options
context:
space:
mode:
authorLeon Romanovsky <leonro@nvidia.com>2023-06-05 10:36:15 +0300
committerSteffen Klassert <steffen.klassert@secunet.com>2023-06-07 09:58:48 +0200
commitbf06fcf4be0feefebd27deb8b60ad262f4230489 (patch)
treea0d6d5e36abf149caf03b3090bdf10475348cdb9 /net/xfrm
parenta287f5b0cfc6804c5b12a4be13c7c9fe27869e90 (diff)
downloadlinux-bf06fcf4be0feefebd27deb8b60ad262f4230489.tar.gz
linux-bf06fcf4be0feefebd27deb8b60ad262f4230489.tar.bz2
linux-bf06fcf4be0feefebd27deb8b60ad262f4230489.zip
xfrm: add missed call to delete offloaded policies
Offloaded policies are deleted through two flows: netdev is going down and policy flush. In both cases, the code lacks relevant call to delete offloaded policy. Fixes: 919e43fad516 ("xfrm: add an interface to offload policy") Signed-off-by: Leon Romanovsky <leonro@nvidia.com> Reviewed-by: Simon Horman <simon.horman@corigine.com> Signed-off-by: Steffen Klassert <steffen.klassert@secunet.com>
Diffstat (limited to 'net/xfrm')
-rw-r--r--net/xfrm/xfrm_policy.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/net/xfrm/xfrm_policy.c b/net/xfrm/xfrm_policy.c
index ff58ce6c030c..e7617c9959c3 100644
--- a/net/xfrm/xfrm_policy.c
+++ b/net/xfrm/xfrm_policy.c
@@ -1831,6 +1831,7 @@ again:
__xfrm_policy_unlink(pol, dir);
spin_unlock_bh(&net->xfrm.xfrm_policy_lock);
+ xfrm_dev_policy_delete(pol);
cnt++;
xfrm_audit_policy_delete(pol, 1, task_valid);
xfrm_policy_kill(pol);
@@ -1869,6 +1870,7 @@ again:
__xfrm_policy_unlink(pol, dir);
spin_unlock_bh(&net->xfrm.xfrm_policy_lock);
+ xfrm_dev_policy_delete(pol);
cnt++;
xfrm_audit_policy_delete(pol, 1, task_valid);
xfrm_policy_kill(pol);