Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 55d6a3cd authored by Johannes Berg's avatar Johannes Berg Committed by John W. Linville
Browse files

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: default avatarJohannes Berg <johannes@sipsolutions.net>
Signed-off-by: default avatarJohn W. Linville <linville@tuxdriver.com>
parent 47cbb110
Loading
Loading
Loading
Loading
+3 −4
Original line number Original line Diff line number Diff line
@@ -1200,10 +1200,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
	/* 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
	 * command queue then there a command routing bug has been introduced
	 * in the queue management code. */
	 * in the queue management code. */
	if (txq_id != IWL_CMD_QUEUE_NUM)
	if (WARN(txq_id != IWL_CMD_QUEUE_NUM,
		IWL_ERROR("Error wrong command queue %d command id 0x%X\n",
		 "wrong command queue %d, command id 0x%X\n", txq_id, pkt->hdr.cmd))
			  txq_id, pkt->hdr.cmd);
		return;
	BUG_ON(txq_id != IWL_CMD_QUEUE_NUM);


	cmd_index = get_cmd_index(&priv->txq[IWL_CMD_QUEUE_NUM].q, index, huge);
	cmd_index = get_cmd_index(&priv->txq[IWL_CMD_QUEUE_NUM].q, index, huge);
	cmd = priv->txq[IWL_CMD_QUEUE_NUM].cmd[cmd_index];
	cmd = priv->txq[IWL_CMD_QUEUE_NUM].cmd[cmd_index];