aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/wireless/iwlwifi/iwl-core.c
diff options
context:
space:
mode:
authorWey-Yi Guy <wey-yi.w.guy@intel.com>2009-11-20 15:05:07 -0500
committerJohn W. Linville <linville@tuxdriver.com>2009-11-23 17:05:37 -0500
commitc341ddb283b9e1a6d217e73fa36738629ca8f4fb (patch)
tree38c9d421c4751a5ca7964a7c7e35043033b7a98e /drivers/net/wireless/iwlwifi/iwl-core.c
parent644c77f0cfa333e58fd4a09450434e89a52d8931 (diff)
iwlwifi: print limited number of event log when uCode error
To help iwlagn uCode debugging, event log will dump to syslog when driver detect uCode error occurred, but this only happen when compile with CONFIG_IWLWIFI_DEBUG and debug flag is enabled; which is not always the case. Also, there is another problem, if the flag is set, the entire event log buffer will be dump to syslog, it can flood the syslog and make it very difficult to debug the problem. Change the default to only dump last 20 entries of event log to syslog unless the following condition meets: 1. both compile with CONFIG_IWLWIFI_DEBUG and debug flag is enabled, and then dump the entire event buffer to syslog. 2. dump event log request from debugfs Signed-off-by: Wey-Yi Guy <wey-yi.w.guy@intel.com> Acked-by: Ben Cahill <ben.m.cahill@intel.com> Signed-off-by: Reinette Chatre <reinette.chatre@intel.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'drivers/net/wireless/iwlwifi/iwl-core.c')
-rw-r--r--drivers/net/wireless/iwlwifi/iwl-core.c5
1 files changed, 2 insertions, 3 deletions
diff --git a/drivers/net/wireless/iwlwifi/iwl-core.c b/drivers/net/wireless/iwlwifi/iwl-core.c
index 2e0fb2804ad0..3629aea250ab 100644
--- a/drivers/net/wireless/iwlwifi/iwl-core.c
+++ b/drivers/net/wireless/iwlwifi/iwl-core.c
@@ -1362,11 +1362,10 @@ void iwl_irq_handle_error(struct iwl_priv *priv)
1362 clear_bit(STATUS_HCMD_ACTIVE, &priv->status); 1362 clear_bit(STATUS_HCMD_ACTIVE, &priv->status);
1363 1363
1364 priv->cfg->ops->lib->dump_nic_error_log(priv); 1364 priv->cfg->ops->lib->dump_nic_error_log(priv);
1365 priv->cfg->ops->lib->dump_nic_event_log(priv, false);
1365#ifdef CONFIG_IWLWIFI_DEBUG 1366#ifdef CONFIG_IWLWIFI_DEBUG
1366 if (iwl_get_debug_level(priv) & IWL_DL_FW_ERRORS) { 1367 if (iwl_get_debug_level(priv) & IWL_DL_FW_ERRORS)
1367 priv->cfg->ops->lib->dump_nic_event_log(priv);
1368 iwl_print_rx_config_cmd(priv); 1368 iwl_print_rx_config_cmd(priv);
1369 }
1370#endif 1369#endif
1371 1370
1372 wake_up_interruptible(&priv->wait_command_queue); 1371 wake_up_interruptible(&priv->wait_command_queue);