summary refs log tree commit diff
path: root/net/mac80211
diff options
context:
space:
mode:
Diffstat (limited to 'net/mac80211')
-rw-r--r--net/mac80211/ieee80211_key.h4
-rw-r--r--net/mac80211/key.c13
2 files changed, 4 insertions, 13 deletions
diff --git a/net/mac80211/ieee80211_key.h b/net/mac80211/ieee80211_key.h
index 1b5e539c678f..58e192530826 100644
--- a/net/mac80211/ieee80211_key.h
+++ b/net/mac80211/ieee80211_key.h
@@ -11,7 +11,7 @@
 #define IEEE80211_KEY_H
 
 #include <linux/types.h>
-#include <linux/kref.h>
+#include <linux/list.h>
 #include <linux/crypto.h>
 #include <net/mac80211.h>
 
@@ -42,8 +42,6 @@
 #define NUM_RX_DATA_QUEUES 17
 
 struct ieee80211_key {
-	struct kref kref;
-
 	union {
 		struct {
 			/* last used TSC */
diff --git a/net/mac80211/key.c b/net/mac80211/key.c
index 92d994f090b6..843d1577f00f 100644
--- a/net/mac80211/key.c
+++ b/net/mac80211/key.c
@@ -21,23 +21,16 @@ struct ieee80211_key *ieee80211_key_alloc(struct ieee80211_sub_if_data *sdata,
 	key = kzalloc(sizeof(struct ieee80211_key) + key_len, flags);
 	if (!key)
 		return NULL;
-	kref_init(&key->kref);
 	return key;
 }
 
-static void ieee80211_key_release(struct kref *kref)
+void ieee80211_key_free(struct ieee80211_key *key)
 {
-	struct ieee80211_key *key;
+	if (!key)
+		return;
 
-	key = container_of(kref, struct ieee80211_key, kref);
 	if (key->conf.alg == ALG_CCMP)
 		ieee80211_aes_key_free(key->u.ccmp.tfm);
 	ieee80211_debugfs_key_remove(key);
 	kfree(key);
 }
-
-void ieee80211_key_free(struct ieee80211_key *key)
-{
-	if (key)
-		kref_put(&key->kref, ieee80211_key_release);
-}