mac80211: remove key TX/RX counter
authorJohannes Berg <johannes.berg@intel.com>
Fri, 12 Jun 2015 12:40:45 +0000 (14:40 +0200)
committerJohannes Berg <johannes.berg@intel.com>
Fri, 17 Jul 2015 13:38:01 +0000 (15:38 +0200)
This counter is inherently racy (since it can be incremented by RX
as well as by concurrent TX) and only available in debugfs. Instead
of fixing it to be per-CPU or similar, remove it for now. If needed
it should be added without races and with proper nl80211, perhaps
even addressing the threshold reporting TODO item that's been there
since the code was originally added.

Signed-off-by: Johannes Berg <johannes.berg@intel.com>
net/mac80211/debugfs_key.c
net/mac80211/key.h
net/mac80211/rx.c
net/mac80211/tx.c

index e82bf1e9d7a83e32566bf9d96f8f461bd4f141ab..702ca122c498938691842d95db7732d6d8c6d6bb 100644 (file)
@@ -57,7 +57,6 @@ KEY_CONF_FILE(keylen, D);
 KEY_CONF_FILE(keyidx, D);
 KEY_CONF_FILE(hw_key_idx, D);
 KEY_FILE(flags, X);
-KEY_FILE(tx_rx_count, D);
 KEY_READ(ifindex, sdata->name, "%s\n");
 KEY_OPS(ifindex);
 
@@ -310,7 +309,6 @@ void ieee80211_debugfs_key_add(struct ieee80211_key *key)
        DEBUGFS_ADD(flags);
        DEBUGFS_ADD(keyidx);
        DEBUGFS_ADD(hw_key_idx);
-       DEBUGFS_ADD(tx_rx_count);
        DEBUGFS_ADD(algorithm);
        DEBUGFS_ADD(tx_spec);
        DEBUGFS_ADD(rx_spec);
index 3f4f9eaac14003d1a2f2f655215fd0ed3fcca499..9951ef06323e743d2c33156d15e5a21478584cd9 100644 (file)
@@ -115,9 +115,6 @@ struct ieee80211_key {
                } gen;
        } u;
 
-       /* number of times this key has been used */
-       int tx_rx_count;
-
 #ifdef CONFIG_MAC80211_DEBUGFS
        struct {
                struct dentry *stalink;
index 9d95cb8e8e955ae792b8b943257386ea4484fd88..3037bd152ffaac1155b44969a99df3fdee3f13ae 100644 (file)
@@ -1682,7 +1682,6 @@ ieee80211_rx_h_decrypt(struct ieee80211_rx_data *rx)
                if (unlikely(rx->key->flags & KEY_FLAG_TAINTED))
                        return RX_DROP_MONITOR;
 
-               rx->key->tx_rx_count++;
                /* TODO: add threshold stuff again */
        } else {
                return RX_DROP_MONITOR;
index 8410bb3bf5e8ddf5552fb0af84d05152425148dd..87b9b4e27d225107bf08aee98d0eb96ba1c1aac4 100644 (file)
@@ -610,7 +610,6 @@ ieee80211_tx_h_select_key(struct ieee80211_tx_data *tx)
        if (tx->key) {
                bool skip_hw = false;
 
-               tx->key->tx_rx_count++;
                /* TODO: add threshold stuff again */
 
                switch (tx->key->conf.cipher) {