Message ID | 1291203462.2856.607.camel@edumazet-laptop |
---|---|
State | Accepted, archived |
Delegated to: | David Miller |
Headers | show |
From: Eric Dumazet <eric.dumazet@gmail.com> Date: Wed, 01 Dec 2010 12:37:42 +0100 > Le mercredi 01 décembre 2010 à 12:21 +0100, Eric Dumazet a écrit : > >> Same here. RTNL is held. Please use __in_dev_get_rtnl() > > By the way we can use rtnl_dereference() in __in_dev_get_rtnl() > > [PATCH net-next-2.6] : __in_dev_get_rtnl() can use rtnl_dereference() > > If caller holds RTNL, we dont need a memory barrier > (smp_read_barrier_depends) included in rcu_dereference(). > > Just use rtnl_dereference() to properly document the assertions. > > Signed-off-by: Eric Dumazet <eric.dumazet@gmail.com> Applied. -- To unsubscribe from this list: send the line "unsubscribe netdev" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
diff --git a/include/linux/inetdevice.h b/include/linux/inetdevice.h index 2b86eaf..ae8fdc5 100644 --- a/include/linux/inetdevice.h +++ b/include/linux/inetdevice.h @@ -222,7 +222,7 @@ static inline struct in_device *in_dev_get(const struct net_device *dev) static inline struct in_device *__in_dev_get_rtnl(const struct net_device *dev) { - return rcu_dereference_check(dev->ip_ptr, lockdep_rtnl_is_held()); + return rtnl_dereference(dev->ip_ptr); } extern void in_dev_finish_destroy(struct in_device *idev);