[kernel/f18] Don't WARN_ON empty queues in iwlwifi (rhbz 873001)

Josh Boyer jwboyer at fedoraproject.org
Fri Nov 16 13:42:00 UTC 2012


commit 2d2a20cadcfcb0b4b13f53c457c614c9521da7c7
Author: Josh Boyer <jwboyer at redhat.com>
Date:   Fri Nov 16 08:39:48 2012 -0500

    Don't WARN_ON empty queues in iwlwifi (rhbz 873001)

 iwlwifi-remove-queue-empty-warn-3.6.patch |   25 +++++++++++++++++++++++++
 kernel.spec                               |   15 +++++++++++++--
 2 files changed, 38 insertions(+), 2 deletions(-)
---
diff --git a/iwlwifi-remove-queue-empty-warn-3.6.patch b/iwlwifi-remove-queue-empty-warn-3.6.patch
new file mode 100644
index 0000000..b8cf5a4
--- /dev/null
+++ b/iwlwifi-remove-queue-empty-warn-3.6.patch
@@ -0,0 +1,25 @@
+diff --git a/drivers/net/wireless/iwlwifi/pcie/tx.c b/drivers/net/wireless/iwlwifi/pcie/tx.c
+index 105e3af..79a4ddc 100644
+--- a/drivers/net/wireless/iwlwifi/pcie/tx.c
++++ b/drivers/net/wireless/iwlwifi/pcie/tx.c
+@@ -480,20 +480,12 @@ void iwl_trans_pcie_txq_enable(struct iwl_trans *trans, int txq_id, int fifo,
+ void iwl_trans_pcie_txq_disable(struct iwl_trans *trans, int txq_id)
+ {
+ 	struct iwl_trans_pcie *trans_pcie = IWL_TRANS_GET_PCIE_TRANS(trans);
+-	u16 rd_ptr, wr_ptr;
+-	int n_bd = trans_pcie->txq[txq_id].q.n_bd;
+ 
+ 	if (!test_and_clear_bit(txq_id, trans_pcie->queue_used)) {
+ 		WARN_ONCE(1, "queue %d not used", txq_id);
+ 		return;
+ 	}
+ 
+-	rd_ptr = iwl_read_prph(trans, SCD_QUEUE_RDPTR(txq_id)) & (n_bd - 1);
+-	wr_ptr = iwl_read_prph(trans, SCD_QUEUE_WRPTR(txq_id));
+-
+-	WARN_ONCE(rd_ptr != wr_ptr, "queue %d isn't empty: [%d,%d]",
+-		  txq_id, rd_ptr, wr_ptr);
+-
+ 	iwl_txq_set_inactive(trans, txq_id);
+ 	IWL_DEBUG_TX_QUEUES(trans, "Deactivate queue %d\n", txq_id);
+ }
diff --git a/kernel.spec b/kernel.spec
index a67160b..f8de3c0 100644
--- a/kernel.spec
+++ b/kernel.spec
@@ -62,7 +62,7 @@ Summary: The Linux kernel
 # For non-released -rc kernels, this will be appended after the rcX and
 # gitX tags, so a 3 here would become part of release "0.rcX.gitX.3"
 #
-%global baserelease 8
+%global baserelease 9
 %global fedora_build %{baserelease}
 
 # base_sublevel is the kernel version we're starting with and patching
@@ -796,8 +796,12 @@ Patch22110: usb-audio-fix-crash-at-re-preparing-the-PCM-stream.patch
 Patch22111: USB-EHCI-urb-hcpriv-should-not-be-NULL.patch
 Patch22112: USB-report-submission-of-active-URBs.patch
 
+#rhbz 869341
 Patch22113: smp_irq_move_cleanup_interrupt.patch
 
+#rhbz 873001
+Patch22114: iwlwifi-remove-queue-empty-warn-3.6.patch
+
 # END OF PATCH DEFINITIONS
 
 %endif
@@ -1541,8 +1545,12 @@ ApplyPatch usb-audio-fix-crash-at-re-preparing-the-PCM-stream.patch
 ApplyPatch USB-EHCI-urb-hcpriv-should-not-be-NULL.patch
 ApplyPatch USB-report-submission-of-active-URBs.patch
 
+#rhbz 869341
 ApplyPatch smp_irq_move_cleanup_interrupt.patch
 
+#rhbz 873001
+ApplyPatch iwlwifi-remove-queue-empty-warn-3.6.patch
+
 # END OF PATCH APPLICATIONS
 
 %endif
@@ -2408,8 +2416,11 @@ fi
 #                 ||----w |
 #                 ||     ||
 %changelog
+* Fri Nov 16 2012 Josh Boyer <jwboyer at redhat.com>
+- Don't WARN_ON empty queues in iwlwifi (rhbz 873001)
+
 * Thu Nov 15 2012 Justin M. Forbes <jforbes at redhat.com>
-- Fix panic in  panic in smp_irq_move_cleanup_interrupt
+- Fix panic in  panic in smp_irq_move_cleanup_interrupt (rhbz 869341)
 
 * Wed Nov 14 2012 Josh Boyer <jwboyer at redhat.com>
 - Fix module signing of kernel flavours


More information about the scm-commits mailing list