On Wed, 2012-05-23 at 12:54 +0800, Yanmin Zhang wrote: > > fi->fib_dev (aka fib_nh[0].nh_dev) need full RCU protection. > The new patch posted at https://lkml.org/lkml/2012/5/22/558 does move the > resetting to RCU protection. Its not enough. We must take care that all users are in a RCU protected region. They might be already, but a full check is needed. For example net/ipv4/fib_trie.c:2563: fi->fib_dev ? fi->fib_dev->name : "*" looks to be safe (because already in a rcu_read_lock()) But its not. Right thing would be to do : struct net_device *ndev = rcu_dereference(fi->fib_dev) ... ndev ? ndev->name : "*" -- To unsubscribe from this list: send the line "unsubscribe netdev" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html