This is a note to let you know that I've just added the patch titled
ipv4: Do not use dead fib_info entries.
to the 3.0-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:
ipv4-do-not-use-dead-fib_info-entries.patch
and it can be found in the queue-3.0 subdirectory.
If you, or anyone else, feels it should not be added to the stable tree,
please let <[email protected]> know about it.
>From ea50b667b36506c51cbc60361a68e0ef1c84d9dc Mon Sep 17 00:00:00 2001
From: "David S. Miller" <[email protected]>
Date: Thu, 10 May 2012 22:16:32 -0400
Subject: ipv4: Do not use dead fib_info entries.
From: "David S. Miller" <[email protected]>
[ Upstream commit dccd9ecc374462e5d6a5b8f8110415a86c2213d8 ]
Due to RCU lookups and RCU based release, fib_info objects can
be found during lookup which have fi->fib_dead set.
We must ignore these entries, otherwise we risk dereferencing
the parts of the entry which are being torn down.
Reported-by: Yevgen Pronenko <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
Signed-off-by: Greg Kroah-Hartman <[email protected]>
---
net/ipv4/fib_trie.c | 2 ++
1 file changed, 2 insertions(+)
--- a/net/ipv4/fib_trie.c
+++ b/net/ipv4/fib_trie.c
@@ -1371,6 +1371,8 @@ static int check_leaf(struct fib_table *
if (fa->fa_tos && fa->fa_tos != flp->flowi4_tos)
continue;
+ if (fi->fib_dead)
+ continue;
if (fa->fa_info->fib_scope < flp->flowi4_scope)
continue;
fib_alias_accessed(fa);
Patches currently in stable-queue which might be from [email protected] are
queue-3.0/sctp-check-cached-dst-before-using-it.patch
queue-3.0/ipv6-fix-incorrect-ipsec-fragment.patch
queue-3.0/pktgen-fix-crash-at-module-unload.patch
queue-3.0/ipv4-fix-the-rcu-race-between-free_fib_info-and-ip_route_output_slow.patch
queue-3.0/ipv4-do-not-use-dead-fib_info-entries.patch
queue-3.0/xfrm-take-net-hdr-len-into-account-for-esp-payload-size-calculation.patch
queue-3.0/solos-pci-fix-dma-support.patch
queue-3.0/revert-net-maintain-namespace-isolation-between-vlan-and-real-device.patch
queue-3.0/pktgen-fix-module-unload-for-good.patch
queue-3.0/skb-avoid-unnecessary-reallocations-in-__skb_cow.patch
--
To unsubscribe from this list: send the line "unsubscribe stable" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html