From: Emmanuel Grumbach Date: Sun, 10 Jun 2012 15:25:09 +0000 (+0300) Subject: iwlwifi: don't modify the timer if we don't Tx X-Git-Tag: v3.6-rc1~125^2~57^2~321 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=49a4fc20df7fced31ffe4038b32b86a0438d1c27;p=platform%2Fkernel%2Flinux-3.10.git iwlwifi: don't modify the timer if we don't Tx In fragmentation we don't update the write pointer of the HW immediately. So we shouldn't modify the timer in that case. Signed-off-by: Emmanuel Grumbach Signed-off-by: Johannes Berg --- diff --git a/drivers/net/wireless/iwlwifi/pcie/trans.c b/drivers/net/wireless/iwlwifi/pcie/trans.c index d6a7317..b647eb4 100644 --- a/drivers/net/wireless/iwlwifi/pcie/trans.c +++ b/drivers/net/wireless/iwlwifi/pcie/trans.c @@ -1354,7 +1354,8 @@ static int iwl_trans_pcie_tx(struct iwl_trans *trans, struct sk_buff *skb, skb->data + hdr_len, secondlen); /* start timer if queue currently empty */ - if (q->read_ptr == q->write_ptr && trans_pcie->wd_timeout) + if (txq->need_update && q->read_ptr == q->write_ptr && + trans_pcie->wd_timeout) mod_timer(&txq->stuck_timer, jiffies + trans_pcie->wd_timeout); /* Tell device the write index *just past* this latest filled TFD */