Phonet: missing rcu_dereference()
authorRémi Denis-Courmont <remi.denis-courmont@nokia.com>
Mon, 16 Nov 2009 22:17:24 +0000 (22:17 +0000)
committerDavid S. Miller <davem@davemloft.net>
Tue, 17 Nov 2009 12:08:50 +0000 (04:08 -0800)
Reported-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com>
Signed-off-by: Rémi Denis-Courmont <remi.denis-courmont@nokia.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
net/phonet/af_phonet.c

index ed65da251b6a70e016de7343299799dfa31781f7..526d0273991a5c99ee2bb2e664bf394640f7a25f 100644 (file)
@@ -44,7 +44,7 @@ static struct phonet_protocol *phonet_proto_get(int protocol)
                return NULL;
 
        rcu_read_lock();
-       pp = proto_tab[protocol];
+       pp = rcu_dereference(proto_tab[protocol]);
        if (pp && !try_module_get(pp->prot->owner))
                pp = NULL;
        rcu_read_unlock();