rpms/kernel/devel linux-2.6-sky2-restore-workarounds.patch, NONE, 1.1 kernel-2.6.spec, 1.3286, 1.3287
Chuck Ebbert (cebbert)
fedora-extras-commits at redhat.com
Mon Jul 9 17:53:14 UTC 2007
- Previous message: rpms/xorg-x11-drv-savage/devel savage-2.1.2-panel-range-hack.patch, NONE, 1.1 xorg-x11-drv-savage.spec, 1.20, 1.21
- Next message: rpms/sugar/OLPC-2 .cvsignore, 1.14, 1.15 sources, 1.14, 1.15 sugar.spec, 1.19, 1.20
- Messages sorted by:
[ date ]
[ thread ]
[ subject ]
[ author ]
Author: cebbert
Update of /cvs/pkgs/rpms/kernel/devel
In directory cvs-int.fedora.redhat.com:/tmp/cvs-serv455
Modified Files:
kernel-2.6.spec
Added Files:
linux-2.6-sky2-restore-workarounds.patch
Log Message:
* Mon Jul 09 2007 Chuck Ebbert <cebbert at redhat.com>
- sky2: restore workarounds for lost interrupts
linux-2.6-sky2-restore-workarounds.patch:
--- NEW FILE linux-2.6-sky2-restore-workarounds.patch ---
Sky2 will hang under load due to lost IRQ. It is reproducible fastest on
Yukon EC chips, but others may have same problem.
This patch restores a couple of workarounds from 2.6.16 that reduce
the likely hood of failure. It is not possible to prove this is sufficient
to stop hangs.
* restart transmit moderation timer in case it expires during IRQ routine
* default to having 10 HZ watchdog timer.
At this point it more important not to hang than to worry about the
power cost. If possible please put in 2.6.22.
Signed-off-by: Stephen Hemminger <shemminger at linux-foundation.org>
--- a/drivers/net/sky2.c 2007-07-05 22:41:48.000000000 -0700
+++ b/drivers/net/sky2.c 2007-07-05 22:42:46.000000000 -0700
@@ -96,7 +96,7 @@ static int disable_msi = 0;
module_param(disable_msi, int, 0);
MODULE_PARM_DESC(disable_msi, "Disable Message Signaled Interrupt (MSI)");
-static int idle_timeout = 0;
+static int idle_timeout = 100;
module_param(idle_timeout, int, 0);
MODULE_PARM_DESC(idle_timeout, "Watchdog timer for lost interrupts (ms)");
@@ -2490,6 +2490,13 @@ static int sky2_poll(struct net_device *
work_done = sky2_status_intr(hw, work_limit);
if (work_done < work_limit) {
+ /* Bug/Errata workaround?
+ * Need to kick the TX irq moderation timer.
+ */
+ if (sky2_read8(hw, STAT_TX_TIMER_CTRL) == TIM_START) {
+ sky2_write8(hw, STAT_TX_TIMER_CTRL, TIM_STOP);
+ sky2_write8(hw, STAT_TX_TIMER_CTRL, TIM_START);
+ }
netif_rx_complete(dev0);
/* end of interrupt, re-enables also acts as I/O synchronization */
Index: kernel-2.6.spec
===================================================================
RCS file: /cvs/pkgs/rpms/kernel/devel/kernel-2.6.spec,v
retrieving revision 1.3286
retrieving revision 1.3287
diff -u -r1.3286 -r1.3287
--- kernel-2.6.spec 9 Jul 2007 16:02:56 -0000 1.3286
+++ kernel-2.6.spec 9 Jul 2007 17:52:37 -0000 1.3287
@@ -543,6 +543,7 @@
Patch670: linux-2.6-ata-quirk.patch
Patch680: git-wireless-dev.patch
Patch690: linux-2.6-e1000-ich9.patch
+Patch691: linux-2.6-sky2-restore-workarounds.patch
Patch710: linux-2.6-bcm43xx-pci-neuter.patch
#Patch780: linux-2.6-clockevents-fix-resume-logic.patch
Patch780: linux-2.6-highres-timers.patch
@@ -1119,6 +1120,8 @@
ApplyPatch git-wireless-dev.patch
# add patch from markmc so that e1000 supports ICH9
ApplyPatch linux-2.6-e1000-ich9.patch
+# sky2: restore workarounds for lost interrupts
+ApplyPatch linux-2.6-sky2-restore-workarounds.patch
# avoid bcm3xx vs bcm43xx-mac80211 PCI ID conflicts
ApplyPatch linux-2.6-bcm43xx-pci-neuter.patch
@@ -2054,6 +2057,9 @@
%endif
%changelog
+* Mon Jul 09 2007 Chuck Ebbert <cebbert at redhat.com>
+- sky2: restore workarounds for lost interrupts
+
* Mon Jul 09 2007 Dave Jones <davej at redhat.com>
- Disable forced HPET on ESB2 too
- Previous message: rpms/xorg-x11-drv-savage/devel savage-2.1.2-panel-range-hack.patch, NONE, 1.1 xorg-x11-drv-savage.spec, 1.20, 1.21
- Next message: rpms/sugar/OLPC-2 .cvsignore, 1.14, 1.15 sources, 1.14, 1.15 sugar.spec, 1.19, 1.20
- Messages sorted by:
[ date ]
[ thread ]
[ subject ]
[ author ]
More information about the scm-commits
mailing list