summaryrefslogtreecommitdiff
path: root/net/key/af_key.c
diff options
context:
space:
mode:
authorGreg Kroah-Hartman <gregkh@linuxfoundation.org>2013-06-08 21:18:09 -0700
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2013-06-08 21:18:09 -0700
commitb37668d0808a1bf15d05e678f431fb5fb4659c90 (patch)
treec53c3f1c7043e87954f4b253332a3f577f99d1ce /net/key/af_key.c
parent451372066dab1d98ba571b176bd1ce71922702f2 (diff)
parent317ddd256b9c24b0d78fa8018f80f1e495481a10 (diff)
downloadlinux-b37668d0808a1bf15d05e678f431fb5fb4659c90.tar.gz
linux-b37668d0808a1bf15d05e678f431fb5fb4659c90.tar.bz2
linux-b37668d0808a1bf15d05e678f431fb5fb4659c90.zip
Merge 3.10-rc5 into staging-next
Diffstat (limited to 'net/key/af_key.c')
-rw-r--r--net/key/af_key.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/net/key/af_key.c b/net/key/af_key.c
index 5b1e5af25713..c5fbd7589681 100644
--- a/net/key/af_key.c
+++ b/net/key/af_key.c
@@ -2366,6 +2366,8 @@ static int pfkey_spddelete(struct sock *sk, struct sk_buff *skb, const struct sa
out:
xfrm_pol_put(xp);
+ if (err == 0)
+ xfrm_garbage_collect(net);
return err;
}
@@ -2615,6 +2617,8 @@ static int pfkey_spdget(struct sock *sk, struct sk_buff *skb, const struct sadb_
out:
xfrm_pol_put(xp);
+ if (delete && err == 0)
+ xfrm_garbage_collect(net);
return err;
}