net: Add checking to rcu_dereference() primitives
Update rcu_dereference() primitives to use new lockdep-based checking. The rcu_dereference() in __in6_dev_get() may be protected either by rcu_read_lock() or RTNL, per Eric Dumazet. The rcu_dereference() in __sk_free() is protected by the fact that it is never reached if an update could change it. Check for this by using rcu_dereference_check() to verify that the struct sock's ->sk_wmem_alloc counter is zero. Acked-by:Eric Dumazet <eric.dumazet@gmail.com> Acked-by:
David S. Miller <davem@davemloft.net> Signed-off-by:
Paul E. McKenney <paulmck@linux.vnet.ibm.com> Cc: laijs@cn.fujitsu.com Cc: dipankar@in.ibm.com Cc: mathieu.desnoyers@polymtl.ca Cc: josh@joshtriplett.org Cc: dvhltc@us.ibm.com Cc: niv@us.ibm.com Cc: peterz@infradead.org Cc: rostedt@goodmis.org Cc: Valdis.Kletnieks@vt.edu Cc: dhowells@redhat.com LKML-Reference: <1266887105-1528-5-git-send-email-paulmck@linux.vnet.ibm.com> Signed-off-by:
Ingo Molnar <mingo@elte.hu>
Showing
- include/linux/rtnetlink.h 3 additions, 0 deletionsinclude/linux/rtnetlink.h
- include/net/addrconf.h 3 additions, 1 deletioninclude/net/addrconf.h
- net/core/dev.c 1 addition, 1 deletionnet/core/dev.c
- net/core/filter.c 3 additions, 3 deletionsnet/core/filter.c
- net/core/rtnetlink.c 8 additions, 0 deletionsnet/core/rtnetlink.c
- net/core/sock.c 2 additions, 1 deletionnet/core/sock.c
- net/decnet/dn_route.c 7 additions, 7 deletionsnet/decnet/dn_route.c
- net/ipv4/route.c 7 additions, 7 deletionsnet/ipv4/route.c
- net/packet/af_packet.c 1 addition, 1 deletionnet/packet/af_packet.c
Loading
Please register or sign in to comment