SRU - LP #276990 - iwlagn: downgrade BUG_ON in interrupt

Stefan Bader stefan.bader at canonical.com
Wed Nov 5 11:14:24 UTC 2008


ACK

Tim Gardner wrote:
> From f09c6f52dc6b81f02599c8de3ed0ef5c74eadae1 Mon Sep 17 00:00:00 2001
> From: Johannes Berg <johannes at sipsolutions.net>
> Date: Tue, 23 Sep 2008 19:18:43 +0200
> Subject: [PATCH] iwlagn: downgrade BUG_ON in interrupt
> 
> LP: #276990
> 
> 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 at sipsolutions.net>
> Signed-off-by: John W. Linville <linville at tuxdriver.com>
> Signed-off-by: Tim Gardner <tim.gardner at canonical.com>
> ---
>  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 78b1a7a..67da11b 100644
> --- a/drivers/net/wireless/iwlwifi/iwl-tx.c
> +++ b/drivers/net/wireless/iwlwifi/iwl-tx.c
> @@ -1192,10 +1192,9 @@ void iwl_tx_cmd_complete(struct iwl_priv *priv, struct iwl_rx_mem_buffer *rxb)
>  	/* If a Tx command is being handled and it isn't in the actual
>  	 * command queue then there a command routing bug has been introduced
>  	 * in the queue management code. */
> -	if (txq_id != IWL_CMD_QUEUE_NUM)
> -		IWL_ERROR("Error wrong command queue %d command id 0x%X\n",
> -			  txq_id, pkt->hdr.cmd);
> -	BUG_ON(txq_id != IWL_CMD_QUEUE_NUM);
> +	if (WARN(txq_id != IWL_CMD_QUEUE_NUM,
> +		 "wrong command queue %d, command id 0x%X\n", txq_id, pkt->hdr.cmd))
> +		return;
>  
>  	cmd_index = get_cmd_index(&priv->txq[IWL_CMD_QUEUE_NUM].q, index, huge);
>  	cmd = priv->txq[IWL_CMD_QUEUE_NUM].cmd[cmd_index];


-- 

When all other means of communication fail, try words!






More information about the kernel-team mailing list