This is a note to let you know that I've just added the patch titled
xfrm: Refcount destination entry on xfrm_lookup
to the 2.6.38-stable tree which can be found at:
http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary
The filename of the patch is:
xfrm-refcount-destination-entry-on-xfrm_lookup.patch
and it can be found in the queue-2.6.38 subdirectory.
If you, or anyone else, feels it should not be added to the stable tree,
please let <[email protected]> know about it.
From 6677647340a5d58b48b792af078701f4068be4b4 Mon Sep 17 00:00:00 2001
From: Steffen Klassert <[email protected]>
Date: Tue, 15 Mar 2011 21:12:49 +0000
Subject: xfrm: Refcount destination entry on xfrm_lookup
From: Steffen Klassert <[email protected]>
[ Upstream commit fbd5060875d25f7764fd1c3d35b83a8ed1d88d7b ]
We return a destination entry without refcount if a socket
policy is found in xfrm_lookup. This triggers a warning on
a negative refcount when freeeing this dst entry. So take
a refcount in this case to fix it.
This refcount was forgotten when xfrm changed to cache bundles
instead of policies for outgoing flows.
Signed-off-by: Steffen Klassert <[email protected]>
Acked-by: Timo Teräs <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
Signed-off-by: Greg Kroah-Hartman <[email protected]>
---
net/xfrm/xfrm_policy.c | 2 ++
1 file changed, 2 insertions(+)
--- a/net/xfrm/xfrm_policy.c
+++ b/net/xfrm/xfrm_policy.c
@@ -1778,6 +1778,8 @@ restart:
goto no_transform;
}
+ dst_hold(&xdst->u.dst);
+
spin_lock_bh(&xfrm_policy_sk_bundle_lock);
xdst->u.dst.next = xfrm_policy_sk_bundles;
xfrm_policy_sk_bundles = &xdst->u.dst;
Patches currently in stable-queue which might be from
[email protected] are
queue-2.6.38/xfrm-refcount-destination-entry-on-xfrm_lookup.patch
_______________________________________________
stable mailing list
[email protected]
http://linux.kernel.org/mailman/listinfo/stable