rpms/kernel/F-7 kernel-2.6.spec, 1.3175, 1.3176 linux-2.6-iwlwifi-irq_tasklet.patch, 1.1, 1.2

John W. Linville (linville) fedora-extras-commits at redhat.com
Mon May 21 20:39:51 UTC 2007


Author: linville

Update of /cvs/pkgs/rpms/kernel/F-7
In directory cvs-int.fedora.redhat.com:/tmp/cvs-serv15565

Modified Files:
	kernel-2.6.spec linux-2.6-iwlwifi-irq_tasklet.patch 
Log Message:
revamp iwl3945 irq_tasklet patch


Index: kernel-2.6.spec
===================================================================
RCS file: /cvs/pkgs/rpms/kernel/F-7/kernel-2.6.spec,v
retrieving revision 1.3175
retrieving revision 1.3176
diff -u -r1.3175 -r1.3176
--- kernel-2.6.spec	21 May 2007 14:00:08 -0000	1.3175
+++ kernel-2.6.spec	21 May 2007 20:39:16 -0000	1.3176
@@ -2404,6 +2404,9 @@
 
 %changelog
 * Mon May 21 2007 John W. Linville <linville at redhat.com>
+- revamp iwl3945 irq_tasklet patch
+
+* Mon May 21 2007 John W. Linville <linville at redhat.com>
 - revert "iwl3945 default to using software scan"
 
 * Fri May 18 2007 Dave Jones <davej at redhat.com>

linux-2.6-iwlwifi-irq_tasklet.patch:

Index: linux-2.6-iwlwifi-irq_tasklet.patch
===================================================================
RCS file: /cvs/pkgs/rpms/kernel/F-7/linux-2.6-iwlwifi-irq_tasklet.patch,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- linux-2.6-iwlwifi-irq_tasklet.patch	18 May 2007 00:37:42 -0000	1.1
+++ linux-2.6-iwlwifi-irq_tasklet.patch	21 May 2007 20:39:16 -0000	1.2
@@ -1,16 +1,43 @@
 --- linux-2.6.21.i386/drivers/net/wireless/mac80211/iwlwifi/base.c.orig	2007-05-17 15:45:54.000000000 -0400
-+++ linux-2.6.21.i386/drivers/net/wireless/mac80211/iwlwifi/base.c	2007-05-17 15:57:45.000000000 -0400
-@@ -11515,6 +11515,13 @@ static void ipw_pci_remove(struct pci_de
- 	 * when we are in fw error */
- 	priv->status &= ~STATUS_FW_ERROR;
- 
-+	/*
-+	 * kill irq_tasklet here, or else it could
-+	 * run and leave interrupts enabled after
-+	 * ipw_down has already completed
-+	 */
-+	tasklet_kill(&priv->irq_tasklet);
++++ linux-2.6.21.i386/drivers/net/wireless/mac80211/iwlwifi/base.c	2007-05-21 16:12:20.000000000 -0400
+@@ -624,6 +624,8 @@ static inline void ipw_disable_interrupt
+ 	ipw_write32(priv, CSR_INT, CSR_INI_SET_MASK);
+ 	ipw_write32(priv, CSR_FH_INT_STATUS, 0xff);
+ 	ipw_write32(priv, CSR_FH_INT_STATUS, 0x00070000);
 +
- 	ipw_down(priv);
++	synchronize_irq(priv->pci_dev->irq);
+ }
  
- 	mutex_unlock(&priv->mutex);
+ /************************* END *******************************/
+@@ -9641,6 +9643,7 @@ static void ipw_bg_resume_work(struct wo
+ 	ipw_write32(priv, CSR_UCODE_DRV_GP1_CLR, CSR_UCODE_SW_BIT_RFKILL);
+ 
+ 	/* tell the device to stop sending interrupts */
++	tasklet_disable(&priv->irq_tasklet);
+ 	ipw_disable_interrupts(priv);
+ 
+ 	spin_lock_irqsave(&priv->lock, flags);
+@@ -9697,6 +9700,7 @@ static void ipw_setup_deferred_work(stru
+ 
+ 	tasklet_init(&priv->irq_tasklet, (void (*)(unsigned long))
+ 		     ipw_irq_tasklet, (unsigned long)priv);
++	tasklet_disable_nosync(&priv->irq_tasklet);
+ }
+ 
+ static void ipw_cancel_deferred_work(struct ipw_priv *priv)
+@@ -10084,6 +10088,7 @@ static int ipw_up(struct ipw_priv *priv)
+ 	ipw_write32(priv, CSR_INT, 0xFFFFFFFF);
+ 
+ 	ipw_enable_interrupts(priv);
++	tasklet_enable(&priv->irq_tasklet);
+ 
+ 	ipw_write32(priv, CSR_UCODE_DRV_GP1_CLR, CSR_UCODE_SW_BIT_RFKILL);
+ 	ipw_write32(priv, CSR_UCODE_DRV_GP1_CLR, CSR_UCODE_SW_BIT_RFKILL);
+@@ -10190,6 +10195,7 @@ static void ipw_down(struct ipw_priv *pr
+ 
+ 	/* tell the device to stop sending interrupts */
+ 	ipw_write32(priv, CSR_RESET, CSR_RESET_REG_FLAG_NEVO_RESET);
++	tasklet_disable(&priv->irq_tasklet);
+ 	ipw_disable_interrupts(priv);
+ 
+ 	if (priv->netdev_registered) {




More information about the fedora-extras-commits mailing list