diff options
author | Johannes Berg <johannes@sipsolutions.net> | 2008-09-23 13:18:43 -0400 |
---|---|---|
committer | John W. Linville <linville@tuxdriver.com> | 2008-09-24 16:18:04 -0400 |
commit | 55d6a3cd0cc85ed90c39cf32e16f622bd003117b (patch) | |
tree | 09d7c464bc5d155973c620eabb8e28d61b1037d5 /drivers/net/wireless/iwlwifi | |
parent | 47cbb1107e4172f3632713d74dc8651a32ceb294 (diff) |
iwlagn: downgrade BUG_ON in interrupt
This BUG_ON really shouldn't trigger, but if it does, as on my machine,
it leaves you wondering what happened because you won't see it. Let's
instead leak a bit of state and memory and at least make it possible to
report it to the kerneloops project to track it.
Signed-off-by: Johannes Berg <johannes@sipsolutions.net>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'drivers/net/wireless/iwlwifi')
-rw-r--r-- | drivers/net/wireless/iwlwifi/iwl-tx.c | 7 |
1 files changed, 3 insertions, 4 deletions
diff --git a/drivers/net/wireless/iwlwifi/iwl-tx.c b/drivers/net/wireless/iwlwifi/iwl-tx.c index e9feca4033f9..907a53ebc6e4 100644 --- a/drivers/net/wireless/iwlwifi/iwl-tx.c +++ b/drivers/net/wireless/iwlwifi/iwl-tx.c | |||
@@ -1200,10 +1200,9 @@ void iwl_tx_cmd_complete(struct iwl_priv *priv, struct iwl_rx_mem_buffer *rxb) | |||
1200 | /* If a Tx command is being handled and it isn't in the actual | 1200 | /* If a Tx command is being handled and it isn't in the actual |
1201 | * command queue then there a command routing bug has been introduced | 1201 | * command queue then there a command routing bug has been introduced |
1202 | * in the queue management code. */ | 1202 | * in the queue management code. */ |
1203 | if (txq_id != IWL_CMD_QUEUE_NUM) | 1203 | if (WARN(txq_id != IWL_CMD_QUEUE_NUM, |
1204 | IWL_ERROR("Error wrong command queue %d command id 0x%X\n", | 1204 | "wrong command queue %d, command id 0x%X\n", txq_id, pkt->hdr.cmd)) |
1205 | txq_id, pkt->hdr.cmd); | 1205 | return; |
1206 | BUG_ON(txq_id != IWL_CMD_QUEUE_NUM); | ||
1207 | 1206 | ||
1208 | cmd_index = get_cmd_index(&priv->txq[IWL_CMD_QUEUE_NUM].q, index, huge); | 1207 | cmd_index = get_cmd_index(&priv->txq[IWL_CMD_QUEUE_NUM].q, index, huge); |
1209 | cmd = priv->txq[IWL_CMD_QUEUE_NUM].cmd[cmd_index]; | 1208 | cmd = priv->txq[IWL_CMD_QUEUE_NUM].cmd[cmd_index]; |