xfrm: Fix xfrm_dst_cache memleak
authorSteffen Klassert <steffen.klassert@secunet.com>
Tue, 24 Oct 2017 08:28:43 +0000 (10:28 +0200)
committerSteffen Klassert <steffen.klassert@secunet.com>
Tue, 24 Oct 2017 11:40:36 +0000 (13:40 +0200)
commitec650b23ecda1e354a9a2961833222552e629ba8
tree3e28d9e97e9d080db2d172bcb5fc0953dc0afd38
parent864f5af3a3525f588391cd230cb8129ad758708e
xfrm: Fix xfrm_dst_cache memleak

We have a memleak whenever a flow matches a policy without
a matching SA. In this case we generate a dummy bundle and
take an additional refcount on the dst_entry. This was needed
as long as we had the flowcache. The flowcache removal patches
deleted all related refcounts but forgot the one for the
dummy bundle case. Fix the memleak by removing this refcount.

Fixes: 3ca28286ea80 ("xfrm_policy: bypass flow_cache_lookup")
Reported-by: Maxime Bizon <mbizon@freebox.fr>
Signed-off-by: Steffen Klassert <steffen.klassert@secunet.com>
net/xfrm/xfrm_policy.c