batman-adv: retrieve B.A.T.M.A.N. V WiFi neighbor stats from real interface
Signed-off-by: Marek Lindner <mareklindner@neomailbox.ch> [sven.eckelmann@open-mesh.com: re-add batadv_get_real_netdev to take rtnl semaphore for batadv_get_real_netdevice] Signed-off-by: Sven Eckelmann <sven.eckelmann@open-mesh.com> Signed-off-by: Simon Wunderlich <sw@simonwunderlich.de>
This commit is contained in:

committed by
Simon Wunderlich

parent
5ed4a460a1
commit
1942de1bba
@@ -206,6 +206,9 @@ static bool batadv_is_valid_iface(const struct net_device *net_dev)
|
||||
* interface on top of another 'real' interface
|
||||
* @netdev: the device to check
|
||||
*
|
||||
* Callers must hold the rtnl semaphore. You may want batadv_get_real_netdev()
|
||||
* instead of this.
|
||||
*
|
||||
* Return: the 'real' net device or the original net device and NULL in case
|
||||
* of an error.
|
||||
*/
|
||||
@@ -242,6 +245,25 @@ out:
|
||||
return real_netdev;
|
||||
}
|
||||
|
||||
/**
|
||||
* batadv_get_real_netdev - check if the given net_device struct is a virtual
|
||||
* interface on top of another 'real' interface
|
||||
* @net_device: the device to check
|
||||
*
|
||||
* Return: the 'real' net device or the original net device and NULL in case
|
||||
* of an error.
|
||||
*/
|
||||
struct net_device *batadv_get_real_netdev(struct net_device *net_device)
|
||||
{
|
||||
struct net_device *real_netdev;
|
||||
|
||||
rtnl_lock();
|
||||
real_netdev = batadv_get_real_netdevice(net_device);
|
||||
rtnl_unlock();
|
||||
|
||||
return real_netdev;
|
||||
}
|
||||
|
||||
/**
|
||||
* batadv_is_wext_netdev - check if the given net_device struct is a
|
||||
* wext wifi interface
|
||||
|
Reference in New Issue
Block a user