iwlwifi: remove traffic log
authorJohannes Berg <johannes.berg@intel.com>
Tue, 3 Apr 2012 23:35:41 +0000 (16:35 -0700)
committerWey-Yi Guy <wey-yi.w.guy@intel.com>
Mon, 23 Apr 2012 21:23:29 +0000 (14:23 -0700)
This is superseded by tracing and no longer needed.

Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Signed-off-by: Wey-Yi Guy <wey-yi.w.guy@intel.com>
drivers/net/wireless/iwlwifi/iwl-agn-rx.c
drivers/net/wireless/iwlwifi/iwl-agn-tx.c
drivers/net/wireless/iwlwifi/iwl-agn.c
drivers/net/wireless/iwlwifi/iwl-core.c
drivers/net/wireless/iwlwifi/iwl-core.h
drivers/net/wireless/iwlwifi/iwl-debugfs.c
drivers/net/wireless/iwlwifi/iwl-dev.h

index a6a6d8abfddad8e628f3ff797095d5a7d353b26d..45a153fe694d828bc4f147827cb0c13db0b4efb9 100644 (file)
@@ -969,7 +969,6 @@ static int iwlagn_rx_reply_rx(struct iwl_priv *priv,
        /* Find max signal strength (dBm) among 3 antenna/receiver chains */
        rx_status.signal = iwlagn_calc_rssi(priv, phy_res);
 
-       iwl_dbg_log_rx_data_frame(priv, len, header);
        IWL_DEBUG_STATS_LIMIT(priv, "Rssi %d, TSF %llu\n",
                rx_status.signal, (unsigned long long)rx_status.mactime);
 
index b77a079a136d04dfbbf9852b94f9b460c16814f0..2a2ac152cc7579963bdd8fbda1e56fe8565fe79e 100644 (file)
@@ -396,7 +396,6 @@ int iwlagn_tx_skb(struct iwl_priv *priv, struct sk_buff *skb)
 
        /* TODO need this for burst mode later on */
        iwlagn_tx_cmd_build_basic(priv, skb, tx_cmd, info, hdr, sta_id);
-       iwl_dbg_log_tx_data_frame(priv, len, hdr);
 
        iwlagn_tx_cmd_build_rate(priv, tx_cmd, info, fc);
 
index 3024d8cc7aa3b9377edff744c4c4350ae269c24e..39187ea7658a05ce89933bba9630cbcf8879cd46 100644 (file)
@@ -1545,7 +1545,7 @@ static struct iwl_op_mode *iwl_op_mode_dvm_start(struct iwl_trans *trans,
        }
 
        if (WARN_ON(!priv->lib))
-               goto out_free_traffic_mem;
+               goto out_free_hw;
 
        /*
         * Populate the state variables that the transport layer needs
@@ -1609,9 +1609,6 @@ static struct iwl_op_mode *iwl_op_mode_dvm_start(struct iwl_trans *trans,
        IWL_DEBUG_INFO(priv, "BT channel inhibition is %s\n",
                       (priv->bt_ch_announce) ? "On" : "Off");
 
-       if (iwl_alloc_traffic_mem(priv))
-               IWL_ERR(priv, "Not enough memory to generate traffic log\n");
-
        /* these spin locks will be used in apm_ops.init and EEPROM access
         * we should init now
         */
@@ -1625,12 +1622,12 @@ static struct iwl_op_mode *iwl_op_mode_dvm_start(struct iwl_trans *trans,
                priv->cfg->name, priv->trans->hw_rev);
 
        if (iwl_trans_start_hw(priv->trans))
-               goto out_free_traffic_mem;
+               goto out_free_hw;
 
        /* Read the EEPROM */
        if (iwl_eeprom_init(priv, priv->trans->hw_rev)) {
                IWL_ERR(priv, "Unable to init EEPROM\n");
-               goto out_free_traffic_mem;
+               goto out_free_hw;
        }
        /* Reset chip to save power until we load uCode during "up". */
        iwl_trans_stop_hw(priv->trans, false);
@@ -1745,8 +1742,7 @@ out_destroy_workqueue:
        iwl_uninit_drv(priv);
 out_free_eeprom:
        iwl_eeprom_free(priv);
-out_free_traffic_mem:
-       iwl_free_traffic_mem(priv);
+out_free_hw:
        ieee80211_free_hw(priv->hw);
 out:
        op_mode = NULL;
@@ -1780,7 +1776,6 @@ void iwl_op_mode_dvm_stop(struct iwl_op_mode *op_mode)
         * until now... */
        destroy_workqueue(priv->workqueue);
        priv->workqueue = NULL;
-       iwl_free_traffic_mem(priv);
 
        iwl_uninit_drv(priv);
 
index a476397d5ab103ca5bf4439357048c6b5b02937f..52805a149e1ff7242a09f1813c97c74ce5ce7985 100644 (file)
 
 #ifdef CONFIG_IWLWIFI_DEBUGFS
 
-#define IWL_TRAFFIC_DUMP_SIZE  (IWL_TRAFFIC_ENTRY_SIZE * IWL_TRAFFIC_ENTRIES)
-
-void iwl_reset_traffic_log(struct iwl_priv *priv)
-{
-       priv->tx_traffic_idx = 0;
-       priv->rx_traffic_idx = 0;
-       if (priv->tx_traffic)
-               memset(priv->tx_traffic, 0, IWL_TRAFFIC_DUMP_SIZE);
-       if (priv->rx_traffic)
-               memset(priv->rx_traffic, 0, IWL_TRAFFIC_DUMP_SIZE);
-}
-
-int iwl_alloc_traffic_mem(struct iwl_priv *priv)
-{
-       u32 traffic_size = IWL_TRAFFIC_DUMP_SIZE;
-
-       if (iwl_have_debug_level(IWL_DL_TX)) {
-               if (!priv->tx_traffic) {
-                       priv->tx_traffic =
-                               kzalloc(traffic_size, GFP_KERNEL);
-                       if (!priv->tx_traffic)
-                               return -ENOMEM;
-               }
-       }
-       if (iwl_have_debug_level(IWL_DL_RX)) {
-               if (!priv->rx_traffic) {
-                       priv->rx_traffic =
-                               kzalloc(traffic_size, GFP_KERNEL);
-                       if (!priv->rx_traffic)
-                               return -ENOMEM;
-               }
-       }
-       iwl_reset_traffic_log(priv);
-       return 0;
-}
-
-void iwl_free_traffic_mem(struct iwl_priv *priv)
-{
-       kfree(priv->tx_traffic);
-       priv->tx_traffic = NULL;
-
-       kfree(priv->rx_traffic);
-       priv->rx_traffic = NULL;
-}
-
-void iwl_dbg_log_tx_data_frame(struct iwl_priv *priv,
-                     u16 length, struct ieee80211_hdr *header)
-{
-       __le16 fc;
-       u16 len;
-
-       if (likely(!iwl_have_debug_level(IWL_DL_TX)))
-               return;
-
-       if (!priv->tx_traffic)
-               return;
-
-       fc = header->frame_control;
-       if (ieee80211_is_data(fc)) {
-               len = (length > IWL_TRAFFIC_ENTRY_SIZE)
-                      ? IWL_TRAFFIC_ENTRY_SIZE : length;
-               memcpy((priv->tx_traffic +
-                      (priv->tx_traffic_idx * IWL_TRAFFIC_ENTRY_SIZE)),
-                      header, len);
-               priv->tx_traffic_idx =
-                       (priv->tx_traffic_idx + 1) % IWL_TRAFFIC_ENTRIES;
-       }
-}
-
-void iwl_dbg_log_rx_data_frame(struct iwl_priv *priv,
-                     u16 length, struct ieee80211_hdr *header)
-{
-       __le16 fc;
-       u16 len;
-
-       if (likely(!iwl_have_debug_level(IWL_DL_RX)))
-               return;
-
-       if (!priv->rx_traffic)
-               return;
-
-       fc = header->frame_control;
-       if (ieee80211_is_data(fc)) {
-               len = (length > IWL_TRAFFIC_ENTRY_SIZE)
-                      ? IWL_TRAFFIC_ENTRY_SIZE : length;
-               memcpy((priv->rx_traffic +
-                      (priv->rx_traffic_idx * IWL_TRAFFIC_ENTRY_SIZE)),
-                      header, len);
-               priv->rx_traffic_idx =
-                       (priv->rx_traffic_idx + 1) % IWL_TRAFFIC_ENTRIES;
-       }
-}
-
 const char *get_mgmt_string(int cmd)
 {
 #define IWL_CMD(x) case x: return #x
@@ -177,12 +84,6 @@ const char *get_ctrl_string(int cmd)
 #undef IWL_CMD
 }
 
-void iwl_clear_traffic_stats(struct iwl_priv *priv)
-{
-       memset(&priv->tx_stats, 0, sizeof(struct traffic_stats));
-       memset(&priv->rx_stats, 0, sizeof(struct traffic_stats));
-}
-
 /*
  * if CONFIG_IWLWIFI_DEBUGFS defined, iwl_update_stats function will
  * record all the MGMT, CTRL and DATA pkt for both TX and Rx pass.
index 3ec011bd879e087a0cc27fbdaf90516c8079c3db..cfa539bd668633ab8b65a71749e1b969f5f61a9f 100644 (file)
@@ -77,49 +77,14 @@ struct iwl_cmd;
  ***************************/
 
 #ifdef CONFIG_IWLWIFI_DEBUGFS
-int iwl_alloc_traffic_mem(struct iwl_priv *priv);
-void iwl_free_traffic_mem(struct iwl_priv *priv);
-void iwl_dbg_log_tx_data_frame(struct iwl_priv *priv,
-                               u16 length, struct ieee80211_hdr *header);
-void iwl_dbg_log_rx_data_frame(struct iwl_priv *priv,
-                               u16 length, struct ieee80211_hdr *header);
 const char *get_mgmt_string(int cmd);
 const char *get_ctrl_string(int cmd);
-void iwl_clear_traffic_stats(struct iwl_priv *priv);
-void iwl_update_stats(struct iwl_priv *priv, bool is_tx, __le16 fc,
-                     u16 len);
-void iwl_reset_traffic_log(struct iwl_priv *priv);
-
+void iwl_update_stats(struct iwl_priv *priv, bool is_tx, __le16 fc, u16 len);
 #else
-static inline int iwl_alloc_traffic_mem(struct iwl_priv *priv)
-{
-       return 0;
-}
-static inline void iwl_free_traffic_mem(struct iwl_priv *priv)
-{
-}
-static inline void iwl_reset_traffic_log(struct iwl_priv *priv)
-{
-}
-static inline void iwl_dbg_log_tx_data_frame(struct iwl_priv *priv,
-                     u16 length, struct ieee80211_hdr *header)
-{
-}
-static inline void iwl_dbg_log_rx_data_frame(struct iwl_priv *priv,
-                     u16 length, struct ieee80211_hdr *header)
-{
-}
 static inline void iwl_update_stats(struct iwl_priv *priv, bool is_tx,
                                    __le16 fc, u16 len)
 {
 }
 #endif
 
-/*******************************************************************************
- * Scanning
- ******************************************************************************/
-/* traffic log definitions */
-#define IWL_TRAFFIC_ENTRIES    (256)
-#define IWL_TRAFFIC_ENTRY_SIZE  (64)
-
 #endif /* __iwl_core_h__ */
index f4a9910b5e75ce6c5a885cf73630810fbab2243f..eb93fddfa14907b5bdb670905707dadb95f02798 100644 (file)
@@ -150,26 +150,6 @@ static ssize_t iwl_dbgfs_tx_statistics_read(struct file *file,
        return ret;
 }
 
-static ssize_t iwl_dbgfs_clear_traffic_statistics_write(struct file *file,
-                                       const char __user *user_buf,
-                                       size_t count, loff_t *ppos)
-{
-       struct iwl_priv *priv = file->private_data;
-       u32 clear_flag;
-       char buf[8];
-       int buf_size;
-
-       memset(buf, 0, sizeof(buf));
-       buf_size = min(count, sizeof(buf) -  1);
-       if (copy_from_user(buf, user_buf, buf_size))
-               return -EFAULT;
-       if (sscanf(buf, "%x", &clear_flag) != 1)
-               return -EFAULT;
-       iwl_clear_traffic_stats(priv);
-
-       return count;
-}
-
 static ssize_t iwl_dbgfs_rx_statistics_read(struct file *file,
                                                char __user *user_buf,
                                                size_t count, loff_t *ppos) {
@@ -805,85 +785,6 @@ DEBUGFS_READ_FILE_OPS(temperature);
 DEBUGFS_READ_WRITE_FILE_OPS(sleep_level_override);
 DEBUGFS_READ_FILE_OPS(current_sleep_command);
 
-static ssize_t iwl_dbgfs_traffic_log_read(struct file *file,
-                                        char __user *user_buf,
-                                        size_t count, loff_t *ppos)
-{
-       struct iwl_priv *priv = file->private_data;
-       int pos = 0, ofs = 0;
-       int cnt = 0, entry;
-
-       char *buf;
-       int bufsz = ((IWL_TRAFFIC_ENTRIES * IWL_TRAFFIC_ENTRY_SIZE * 64) * 2) +
-               (priv->cfg->base_params->num_of_queues * 32 * 8) + 400;
-       const u8 *ptr;
-       ssize_t ret;
-
-       buf = kzalloc(bufsz, GFP_KERNEL);
-       if (!buf)
-               return -ENOMEM;
-       if (priv->tx_traffic && iwl_have_debug_level(IWL_DL_TX)) {
-               ptr = priv->tx_traffic;
-               pos += scnprintf(buf + pos, bufsz - pos,
-                               "Tx Traffic idx: %u\n", priv->tx_traffic_idx);
-               for (cnt = 0, ofs = 0; cnt < IWL_TRAFFIC_ENTRIES; cnt++) {
-                       for (entry = 0; entry < IWL_TRAFFIC_ENTRY_SIZE / 16;
-                            entry++,  ofs += 16) {
-                               pos += scnprintf(buf + pos, bufsz - pos,
-                                               "0x%.4x ", ofs);
-                               hex_dump_to_buffer(ptr + ofs, 16, 16, 2,
-                                                  buf + pos, bufsz - pos, 0);
-                               pos += strlen(buf + pos);
-                               if (bufsz - pos > 0)
-                                       buf[pos++] = '\n';
-                       }
-               }
-       }
-
-       if (priv->rx_traffic && iwl_have_debug_level(IWL_DL_RX)) {
-               ptr = priv->rx_traffic;
-               pos += scnprintf(buf + pos, bufsz - pos,
-                               "Rx Traffic idx: %u\n", priv->rx_traffic_idx);
-               for (cnt = 0, ofs = 0; cnt < IWL_TRAFFIC_ENTRIES; cnt++) {
-                       for (entry = 0; entry < IWL_TRAFFIC_ENTRY_SIZE / 16;
-                            entry++,  ofs += 16) {
-                               pos += scnprintf(buf + pos, bufsz - pos,
-                                               "0x%.4x ", ofs);
-                               hex_dump_to_buffer(ptr + ofs, 16, 16, 2,
-                                                  buf + pos, bufsz - pos, 0);
-                               pos += strlen(buf + pos);
-                               if (bufsz - pos > 0)
-                                       buf[pos++] = '\n';
-                       }
-               }
-       }
-
-       ret = simple_read_from_buffer(user_buf, count, ppos, buf, pos);
-       kfree(buf);
-       return ret;
-}
-
-static ssize_t iwl_dbgfs_traffic_log_write(struct file *file,
-                                        const char __user *user_buf,
-                                        size_t count, loff_t *ppos)
-{
-       struct iwl_priv *priv = file->private_data;
-       char buf[8];
-       int buf_size;
-       int traffic_log;
-
-       memset(buf, 0, sizeof(buf));
-       buf_size = min(count, sizeof(buf) -  1);
-       if (copy_from_user(buf, user_buf, buf_size))
-               return -EFAULT;
-       if (sscanf(buf, "%d", &traffic_log) != 1)
-               return -EFAULT;
-       if (traffic_log == 0)
-               iwl_reset_traffic_log(priv);
-
-       return count;
-}
-
 static const char *fmt_value = "  %-30s %10u\n";
 static const char *fmt_hex   = "  %-30s       0x%02X\n";
 static const char *fmt_table = "  %-30s %10u  %10u  %10u  %10u\n";
@@ -2506,7 +2407,6 @@ static ssize_t iwl_dbgfs_calib_disabled_write(struct file *file,
 
 DEBUGFS_READ_FILE_OPS(rx_statistics);
 DEBUGFS_READ_FILE_OPS(tx_statistics);
-DEBUGFS_READ_WRITE_FILE_OPS(traffic_log);
 DEBUGFS_READ_FILE_OPS(ucode_rx_stats);
 DEBUGFS_READ_FILE_OPS(ucode_tx_stats);
 DEBUGFS_READ_FILE_OPS(ucode_general_stats);
@@ -2514,7 +2414,6 @@ DEBUGFS_READ_FILE_OPS(sensitivity);
 DEBUGFS_READ_FILE_OPS(chain_noise);
 DEBUGFS_READ_FILE_OPS(power_save_status);
 DEBUGFS_WRITE_FILE_OPS(clear_ucode_statistics);
-DEBUGFS_WRITE_FILE_OPS(clear_traffic_statistics);
 DEBUGFS_READ_WRITE_FILE_OPS(ucode_tracing);
 DEBUGFS_READ_WRITE_FILE_OPS(missed_beacon);
 DEBUGFS_READ_WRITE_FILE_OPS(plcp_delta);
@@ -2571,10 +2470,8 @@ int iwl_dbgfs_register(struct iwl_priv *priv, const char *name)
 
        DEBUGFS_ADD_FILE(rx_statistics, dir_debug, S_IRUSR);
        DEBUGFS_ADD_FILE(tx_statistics, dir_debug, S_IRUSR);
-       DEBUGFS_ADD_FILE(traffic_log, dir_debug, S_IWUSR | S_IRUSR);
        DEBUGFS_ADD_FILE(power_save_status, dir_debug, S_IRUSR);
        DEBUGFS_ADD_FILE(clear_ucode_statistics, dir_debug, S_IWUSR);
-       DEBUGFS_ADD_FILE(clear_traffic_statistics, dir_debug, S_IWUSR);
        DEBUGFS_ADD_FILE(missed_beacon, dir_debug, S_IWUSR);
        DEBUGFS_ADD_FILE(plcp_delta, dir_debug, S_IWUSR | S_IRUSR);
        DEBUGFS_ADD_FILE(rf_reset, dir_debug, S_IWUSR | S_IRUSR);
index a76be803b26e4f5611075076bc9efe707432e895..e89dc2650450e6c65b821d505d4d7263e19e9ff1 100644 (file)
@@ -1017,10 +1017,6 @@ struct iwl_priv {
 
 #ifdef CONFIG_IWLWIFI_DEBUGFS
        /* debugfs */
-       u16 tx_traffic_idx;
-       u16 rx_traffic_idx;
-       u8 *tx_traffic;
-       u8 *rx_traffic;
        struct dentry *debugfs_dir;
        u32 dbgfs_sram_offset, dbgfs_sram_len;
        bool disable_ht40;