Thread (15 messages) 15 messages, 4 authors, 2007-12-04

Re: [BUG] 2.6.24-rc3-git2 softlockup detected

From: Kyle McMartin <hidden>
Date: 2007-11-30 06:39:40
Also in: linux-scsi, lkml
Subsystem: lsilogic/symbios/ncr 53c8xx and 53c1010 pci-scsi drivers, scsi subsystem, the rest · Maintainers: Matthew Wilcox, "James E.J. Bottomley", "Martin K. Petersen", Linus Torvalds

On Thu, Nov 29, 2007 at 12:35:33AM -0800, Andrew Morton wrote:
ten million is close enough to infinity for me to assume that we broke the
driver and that's never going to terminate.
how about this? doesn't break things on my pa8800:
diff --git a/drivers/scsi/sym53c8xx_2/sym_hipd.c b/drivers/scsi/sym53c8xx_2/sym_hipd.c
index 463f119..ef01cb1 100644
--- a/drivers/scsi/sym53c8xx_2/sym_hipd.c
+++ b/drivers/scsi/sym53c8xx_2/sym_hipd.c
@@ -1037,10 +1037,13 @@ restart_test:
 	/*
 	 *  Wait 'til done (with timeout)
 	 */
-	for (i=0; i<SYM_SNOOP_TIMEOUT; i++)
+	do {	
 		if (INB(np, nc_istat) & (INTF|SIP|DIP))
 			break;
-	if (i>=SYM_SNOOP_TIMEOUT) {
+		msleep(10);
+	} while (i++ < SYM_SNOOP_TIMEOUT);
+
+	if (i >= SYM_SNOOP_TIMEOUT) {
 		printf ("CACHE TEST FAILED: timeout.\n");
 		return (0x20);
 	}
diff --git a/drivers/scsi/sym53c8xx_2/sym_hipd.h b/drivers/scsi/sym53c8xx_2/sym_hipd.h
index ad07880..85c483b 100644
--- a/drivers/scsi/sym53c8xx_2/sym_hipd.h
+++ b/drivers/scsi/sym53c8xx_2/sym_hipd.h
@@ -339,7 +339,7 @@
 /*
  *  Misc.
  */
-#define SYM_SNOOP_TIMEOUT (10000000)
+#define SYM_SNOOP_TIMEOUT (1000)
 #define BUS_8_BIT	0
 #define BUS_16_BIT	1
 
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help