net/ipv4/ip_vti.c: Fix __rcu warnings detected by sparse.
authorSaurabh <saurabh.mohan@vyatta.com>
Mon, 23 Jul 2012 07:52:04 +0000 (07:52 +0000)
committerDavid S. Miller <davem@davemloft.net>
Mon, 23 Jul 2012 20:00:54 +0000 (13:00 -0700)
With CONFIG_SPARSE_RCU_POINTER=y sparse identified references which did not
specificy __rcu in ip_vti.c

Signed-off-by: Saurabh Mohan <saurabh.mohan@vyatta.com>
Reported-by: Fengguang Wu <fengguang.wu@intel.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
net/ipv4/ip_vti.c

index c41b5c3599360db15b399b9d3218472a1a8786fa..3511ffba7bd41088cd95d677f5c43dab947d9bf2 100644 (file)
@@ -55,7 +55,7 @@ struct vti_net {
        struct ip_tunnel __rcu *tunnels_r[HASH_SIZE];
        struct ip_tunnel __rcu *tunnels_l[HASH_SIZE];
        struct ip_tunnel __rcu *tunnels_wc[1];
-       struct ip_tunnel **tunnels[4];
+       struct ip_tunnel __rcu **tunnels[4];
 
        struct net_device *fb_tunnel_dev;
 };
@@ -160,8 +160,8 @@ static struct ip_tunnel *vti_tunnel_lookup(struct net *net,
        return NULL;
 }
 
-static struct ip_tunnel **__vti_bucket(struct vti_net *ipn,
-                                      struct ip_tunnel_parm *parms)
+static struct ip_tunnel __rcu **__vti_bucket(struct vti_net *ipn,
+                                            struct ip_tunnel_parm *parms)
 {
        __be32 remote = parms->iph.daddr;
        __be32 local = parms->iph.saddr;
@@ -179,8 +179,8 @@ static struct ip_tunnel **__vti_bucket(struct vti_net *ipn,
        return &ipn->tunnels[prio][h];
 }
 
-static inline struct ip_tunnel **vti_bucket(struct vti_net *ipn,
-                                           struct ip_tunnel *t)
+static inline struct ip_tunnel __rcu **vti_bucket(struct vti_net *ipn,
+                                                 struct ip_tunnel *t)
 {
        return __vti_bucket(ipn, &t->parms);
 }