diff options
Diffstat (limited to 'net/mac80211/debugfs_key.c')
| -rw-r--r-- | net/mac80211/debugfs_key.c | 16 | 
1 files changed, 10 insertions, 6 deletions
diff --git a/net/mac80211/debugfs_key.c b/net/mac80211/debugfs_key.c index 7932767bb482..090d08ff22c4 100644 --- a/net/mac80211/debugfs_key.c +++ b/net/mac80211/debugfs_key.c @@ -283,6 +283,11 @@ void ieee80211_debugfs_key_update_default(struct ieee80211_sub_if_data *sdata)  	lockdep_assert_held(&sdata->local->key_mtx); +	if (sdata->debugfs.default_unicast_key) { +		debugfs_remove(sdata->debugfs.default_unicast_key); +		sdata->debugfs.default_unicast_key = NULL; +	} +  	if (sdata->default_unicast_key) {  		key = key_mtx_dereference(sdata->local,  					  sdata->default_unicast_key); @@ -290,9 +295,11 @@ void ieee80211_debugfs_key_update_default(struct ieee80211_sub_if_data *sdata)  		sdata->debugfs.default_unicast_key =  			debugfs_create_symlink("default_unicast_key",  					       sdata->debugfs.dir, buf); -	} else { -		debugfs_remove(sdata->debugfs.default_unicast_key); -		sdata->debugfs.default_unicast_key = NULL; +	} + +	if (sdata->debugfs.default_multicast_key) { +		debugfs_remove(sdata->debugfs.default_multicast_key); +		sdata->debugfs.default_multicast_key = NULL;  	}  	if (sdata->default_multicast_key) { @@ -302,9 +309,6 @@ void ieee80211_debugfs_key_update_default(struct ieee80211_sub_if_data *sdata)  		sdata->debugfs.default_multicast_key =  			debugfs_create_symlink("default_multicast_key",  					       sdata->debugfs.dir, buf); -	} else { -		debugfs_remove(sdata->debugfs.default_multicast_key); -		sdata->debugfs.default_multicast_key = NULL;  	}  }  | 
