ipv4: inetdev_by_index() switch to RCU
Subsystems (3)
Use dev_get_by_index_rcu() instead of __dev_get_by_index() and dev_base_lock rwlock
Signed-off-by Eric Dumazet <[email protected]>
---
net/ipv4/devinet.c +4 -3
@@ -405,11 +405,12 @@ struct in_device *inetdev_by_index(struct net *net, int ifindex) {struct net_device *dev;struct in_device *in_dev =NULL ; -read_lock (&dev_base_lock); - dev =__dev_get_by_index (net, ifindex); + +rcu_read_lock (); + dev =dev_get_by_index_rcu (net, ifindex);if (dev) in_dev =in_dev_get (dev); -read_unlock (&dev_base_lock); +rcu_read_unlock ();return in_dev; }
From: Eric Dumazet <[email protected]>
Date: Mon, 02 Nov 2009 06:23:04 +0100
Quoted 4 lines
Use
dev_get_by_index_rcu()instead of__dev_get_by_index()anddev_base_lockrwlockSigned-off-by Eric Dumazet <[email protected]>
Man, you've been busy.... :-)
Applied, thanks!