net: split rt_genid for ipv4 and ipv6
authorfan.du <fan.du@windriver.com>
Tue, 30 Jul 2013 00:33:53 +0000 (08:33 +0800)
committerDavid S. Miller <davem@davemloft.net>
Wed, 31 Jul 2013 21:56:36 +0000 (14:56 -0700)
commitca4c3fc24e293719fe7410c4e63da9b6bc633b83
tree0461841f3d10b11a26ebe1a0adc99c7b00a489a2
parentba361cb3d4c977e2b94b5d97905f66b4d48964de
net: split rt_genid for ipv4 and ipv6

Current net name space has only one genid for both IPv4 and IPv6, it has below
drawbacks:

- Add/delete an IPv4 address will invalidate all IPv6 routing table entries.
- Insert/remove XFRM policy will also invalidate both IPv4/IPv6 routing table
  entries even when the policy is only applied for one address family.

Thus, this patch attempt to split one genid for two to cater for IPv4 and IPv6
separately in a fine granularity.

Signed-off-by: Fan Du <fan.du@windriver.com>
Acked-by: Hannes Frederic Sowa <hannes@stressinduktion.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
include/net/net_namespace.h
include/net/netns/ipv4.h
include/net/netns/ipv6.h
net/ipv4/route.c
net/ipv6/af_inet6.c
net/ipv6/route.c
net/xfrm/xfrm_policy.c
security/selinux/include/xfrm.h