forked from Minki/linux
mac80211: remove vif debugfs driver callbacks
This basically reverts commit b207cdb07f
.
Now is possible to use drv_{add,remove}_interface() and vif->debugfs_dir
to create/remove per interface debugfs files. Remove redundant
callbacks.
Signed-off-by: Stanislaw Gruszka <sgruszka@redhat.com>
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
This commit is contained in:
parent
ddbfe860ac
commit
d260ff12e7
@ -2233,18 +2233,6 @@ enum ieee80211_roc_type {
|
||||
* MAC address of the device going away.
|
||||
* Hence, this callback must be implemented. It can sleep.
|
||||
*
|
||||
* @add_interface_debugfs: Drivers can use this callback to add debugfs files
|
||||
* when a vif is added to mac80211. This callback and
|
||||
* @remove_interface_debugfs should be within a CONFIG_MAC80211_DEBUGFS
|
||||
* conditional. @remove_interface_debugfs must be provided for cleanup.
|
||||
* This callback can sleep.
|
||||
*
|
||||
* @remove_interface_debugfs: Remove the debugfs files which were added using
|
||||
* @add_interface_debugfs. This callback must remove all debugfs entries
|
||||
* that were added because mac80211 only removes interface debugfs when the
|
||||
* interface is destroyed, not when it is removed from the driver.
|
||||
* This callback can sleep.
|
||||
*
|
||||
* @config: Handler for configuration requests. IEEE 802.11 code calls this
|
||||
* function to change hardware configuration, e.g., channel.
|
||||
* This function should never fail but returns a negative error code
|
||||
@ -2665,12 +2653,6 @@ struct ieee80211_ops {
|
||||
struct ieee80211_vif *vif,
|
||||
struct ieee80211_sta *sta,
|
||||
struct dentry *dir);
|
||||
void (*add_interface_debugfs)(struct ieee80211_hw *hw,
|
||||
struct ieee80211_vif *vif,
|
||||
struct dentry *dir);
|
||||
void (*remove_interface_debugfs)(struct ieee80211_hw *hw,
|
||||
struct ieee80211_vif *vif,
|
||||
struct dentry *dir);
|
||||
#endif
|
||||
void (*sta_notify)(struct ieee80211_hw *hw, struct ieee80211_vif *vif,
|
||||
enum sta_notify_cmd, struct ieee80211_sta *sta);
|
||||
|
@ -547,43 +547,6 @@ static inline void drv_sta_remove_debugfs(struct ieee80211_local *local,
|
||||
local->ops->sta_remove_debugfs(&local->hw, &sdata->vif,
|
||||
sta, dir);
|
||||
}
|
||||
|
||||
static inline
|
||||
void drv_add_interface_debugfs(struct ieee80211_local *local,
|
||||
struct ieee80211_sub_if_data *sdata)
|
||||
{
|
||||
might_sleep();
|
||||
|
||||
check_sdata_in_driver(sdata);
|
||||
|
||||
if (!local->ops->add_interface_debugfs)
|
||||
return;
|
||||
|
||||
local->ops->add_interface_debugfs(&local->hw, &sdata->vif,
|
||||
sdata->vif.debugfs_dir);
|
||||
}
|
||||
|
||||
static inline
|
||||
void drv_remove_interface_debugfs(struct ieee80211_local *local,
|
||||
struct ieee80211_sub_if_data *sdata)
|
||||
{
|
||||
might_sleep();
|
||||
|
||||
check_sdata_in_driver(sdata);
|
||||
|
||||
if (!local->ops->remove_interface_debugfs)
|
||||
return;
|
||||
|
||||
local->ops->remove_interface_debugfs(&local->hw, &sdata->vif,
|
||||
sdata->vif.debugfs_dir);
|
||||
}
|
||||
#else
|
||||
static inline
|
||||
void drv_add_interface_debugfs(struct ieee80211_local *local,
|
||||
struct ieee80211_sub_if_data *sdata) {}
|
||||
static inline
|
||||
void drv_remove_interface_debugfs(struct ieee80211_local *local,
|
||||
struct ieee80211_sub_if_data *sdata) {}
|
||||
#endif
|
||||
|
||||
static inline __must_check
|
||||
|
@ -557,8 +557,6 @@ int ieee80211_do_open(struct wireless_dev *wdev, bool coming_up)
|
||||
goto err_del_interface;
|
||||
}
|
||||
|
||||
drv_add_interface_debugfs(local, sdata);
|
||||
|
||||
if (sdata->vif.type == NL80211_IFTYPE_AP) {
|
||||
local->fif_pspoll++;
|
||||
local->fif_probe_req++;
|
||||
@ -846,8 +844,6 @@ static void ieee80211_do_stop(struct ieee80211_sub_if_data *sdata,
|
||||
case NL80211_IFTYPE_AP:
|
||||
skb_queue_purge(&sdata->skb_queue);
|
||||
|
||||
drv_remove_interface_debugfs(local, sdata);
|
||||
|
||||
if (going_down)
|
||||
drv_remove_interface(local, sdata);
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user