浏览代码

iwlegacy: fix command queue timeout

iwlegacy version of fix:

commit 282cdb325aea4ebbc42ce753b47cc96145eb54bc
Author: Johannes Berg <johannes.berg@intel.com>
Date:   Mon Sep 12 12:09:10 2011 -0700

    iwlagn: fix command queue timeout

    If the command queue is constantly busy,
    which can happen in P2P, the hangcheck
    timer will frequently find a command in
    it and will eventually reset the device
    because nothing sets the timestamp for
    this queue when commands are processed.

    Fix this by setting the timestamp when
    a command completes.

iwlegacy does not support P2P, but this patch fix possible
unneeded hardware resets, hence is needed.

Cc: stable@kernel.org  # 2.6.39+
Signed-off-by: Stanislaw Gruszka <sgruszka@redhat.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
Stanislaw Gruszka 13 年之前
父节点
当前提交
2e2a41d6ca
共有 1 个文件被更改,包括 2 次插入0 次删除
  1. 2 0
      drivers/net/wireless/iwlegacy/iwl-tx.c

+ 2 - 0
drivers/net/wireless/iwlegacy/iwl-tx.c

@@ -625,6 +625,8 @@ iwl_legacy_tx_cmd_complete(struct iwl_priv *priv, struct iwl_rx_mem_buffer *rxb)
 	cmd = txq->cmd[cmd_index];
 	cmd = txq->cmd[cmd_index];
 	meta = &txq->meta[cmd_index];
 	meta = &txq->meta[cmd_index];
 
 
+	txq->time_stamp = jiffies;
+
 	pci_unmap_single(priv->pci_dev,
 	pci_unmap_single(priv->pci_dev,
 			 dma_unmap_addr(meta, mapping),
 			 dma_unmap_addr(meta, mapping),
 			 dma_unmap_len(meta, len),
 			 dma_unmap_len(meta, len),