mac802154: move interface del handling in iface
This patch moves and rename the mac802154_del_iface function into iface.c and rename the function to ieee802154_if_remove which is a similar naming convention like mac80211. Signed-off-by: Alexander Aring <alex.aring@gmail.com> Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
This commit is contained in:
parent
9f3295b9ea
commit
b210b18747
4 changed files with 16 additions and 18 deletions
|
@ -28,7 +28,9 @@ ieee802154_add_iface_deprecated(struct wpan_phy *wpan_phy,
|
|||
static void ieee802154_del_iface_deprecated(struct wpan_phy *wpan_phy,
|
||||
struct net_device *dev)
|
||||
{
|
||||
mac802154_del_iface(wpan_phy, dev);
|
||||
struct ieee802154_sub_if_data *sdata = IEEE802154_DEV_TO_SUB_IF(dev);
|
||||
|
||||
ieee802154_if_remove(sdata);
|
||||
}
|
||||
|
||||
const struct cfg802154_ops mac802154_config_ops = {
|
||||
|
|
|
@ -175,6 +175,6 @@ void mac802154_unlock_table(struct net_device *dev);
|
|||
|
||||
struct net_device *
|
||||
mac802154_add_iface(struct wpan_phy *phy, const char *name, int type);
|
||||
void mac802154_del_iface(struct wpan_phy *phy, struct net_device *dev);
|
||||
void ieee802154_if_remove(struct ieee802154_sub_if_data *sdata);
|
||||
|
||||
#endif /* __IEEE802154_I_H */
|
||||
|
|
|
@ -443,3 +443,15 @@ void mac802154_monitor_setup(struct net_device *dev)
|
|||
|
||||
sdata->promisuous_mode = true;
|
||||
}
|
||||
|
||||
void ieee802154_if_remove(struct ieee802154_sub_if_data *sdata)
|
||||
{
|
||||
ASSERT_RTNL();
|
||||
|
||||
mutex_lock(&sdata->local->iflist_mtx);
|
||||
list_del_rcu(&sdata->list);
|
||||
mutex_unlock(&sdata->local->iflist_mtx);
|
||||
|
||||
synchronize_rcu();
|
||||
unregister_netdevice(sdata->dev);
|
||||
}
|
||||
|
|
|
@ -59,22 +59,6 @@ mac802154_netdev_register(struct wpan_phy *phy, struct net_device *dev)
|
|||
return 0;
|
||||
}
|
||||
|
||||
void mac802154_del_iface(struct wpan_phy *phy, struct net_device *dev)
|
||||
{
|
||||
struct ieee802154_sub_if_data *sdata = IEEE802154_DEV_TO_SUB_IF(dev);
|
||||
|
||||
ASSERT_RTNL();
|
||||
|
||||
BUG_ON(sdata->local->phy != phy);
|
||||
|
||||
mutex_lock(&sdata->local->iflist_mtx);
|
||||
list_del_rcu(&sdata->list);
|
||||
mutex_unlock(&sdata->local->iflist_mtx);
|
||||
|
||||
synchronize_rcu();
|
||||
unregister_netdevice(sdata->dev);
|
||||
}
|
||||
|
||||
struct net_device *
|
||||
mac802154_add_iface(struct wpan_phy *phy, const char *name, int type)
|
||||
{
|
||||
|
|
Loading…
Reference in a new issue