ipw3945: not only it periodically dies, it also BUG()s

From: Pavel Machek
Date: Tue Feb 05 2008 - 17:00:46 EST


Hi!

Under not-even-high load, it periodically restarts:

Feb 5 21:08:50 amd kernel: iwl3945: Microcode SW error detected.
Restarting 0x82000008.
Feb 5 21:08:52 amd kernel: iwl3945: Can't stop Rx DMA.
Feb 5 21:12:51 amd kernel: iwl3945: Microcode SW error detected.
Restarting 0x82000008.
Feb 5 21:12:53 amd kernel: iwl3945: Can't stop Rx DMA.
Feb 5 21:21:44 amd kernel: iwl3945: Microcode SW error detected.
Restarting 0x82000008.
Feb 5 21:21:46 amd kernel: iwl3945: Can't stop Rx DMA.
Feb 5 21:27:32 amd kernel: iwl3945: Microcode SW error detected.
Restarting 0x82000008.
Feb 5 21:27:34 amd kernel: iwl3945: Can't stop Rx DMA.
Feb 5 21:41:29 amd -- MARK --
Feb 5 22:01:29 amd -- MARK --
Feb 5 22:09:11 amd kernel: iwl3945: Microcode SW error detected.
Restarting 0x82000008.
Feb 5 22:09:12 amd kernel: iwl3945: Can't stop Rx DMA.

...I've reported this before, with full debugging. Not sure if
anything happened.

Now, I got BUG() in iwl3945-base.c: 3824

static void iwl3945_tx_cmd_complete(struct iwl3945_priv *priv,
struct iwl3945_rx_mem_buffer *rxb)
{
struct iwl3945_rx_packet *pkt = (struct iwl3945_rx_packet
*)rxb->skb->data;
u16 sequence = le16_to_cpu(pkt->hdr.sequence);
int txq_id = SEQ_TO_QUEUE(sequence);
int index = SEQ_TO_INDEX(sequence);
int huge = sequence & SEQ_HUGE_FRAME;
int cmd_index;
struct iwl3945_cmd *cmd;

/* 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);
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Here. Any ideas?
Pavel

--
(english) http://www.livejournal.com/~pavelmachek
(cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/