[PATCH] 2.6 aacraid: Fix for controller load based timeouts

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Martin Drab found that he could get aacraid timeouts with high load on
his controller / disk drive combinations.  After some experimentation
Mark Salyzyn has come up with a patch to reduce the default max_sectors
to something that will keep the controller from being overloaded and
will eliminate the timeout issues.

Patch against scsi-misc-2.6 git tree.

Signed-off-by: Mark Haverkamp <markh@xxxxxxxx>

Index: scsi-misc-2.6/drivers/scsi/aacraid/aacraid.h
===================================================================
--- scsi-misc-2.6.orig/drivers/scsi/aacraid/aacraid.h	2005-07-08 09:22:20.000000000 -0700
+++ scsi-misc-2.6/drivers/scsi/aacraid/aacraid.h	2005-07-08 09:23:52.000000000 -0700
@@ -15,11 +15,7 @@
 #define AAC_MAX_LUN		(8)
 
 #define AAC_MAX_HOSTPHYSMEMPAGES (0xfffff)
-/*
- *  max_sectors is an unsigned short, otherwise limit is 0x100000000 / 512
- * Linux has starvation problems if we permit larger than 4MB I/O ...
- */
-#define AAC_MAX_32BIT_SGBCOUNT	((unsigned short)8192)
+#define AAC_MAX_32BIT_SGBCOUNT	((unsigned short)512)
 
 /*
  * These macros convert from physical channels to virtual channels
Index: scsi-misc-2.6/drivers/scsi/aacraid/linit.c
===================================================================
--- scsi-misc-2.6.orig/drivers/scsi/aacraid/linit.c	2005-06-27 09:57:38.000000000 -0700
+++ scsi-misc-2.6/drivers/scsi/aacraid/linit.c	2005-07-08 09:23:52.000000000 -0700
@@ -374,7 +374,8 @@
 	else
 		scsi_adjust_queue_depth(sdev, 0, 1);
 
-	if (host->max_sectors < AAC_MAX_32BIT_SGBCOUNT)
+	if (!(((struct aac_dev *)host->hostdata)->adapter_info.options
+	  & AAC_OPT_NEW_COMM))
 		blk_queue_max_segment_size(sdev->request_queue, 65536);
 
 	return 0;

-- 
Mark Haverkamp <markh@xxxxxxxx>

-
: send the line "unsubscribe linux-scsi" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [SCSI Target Devel]     [Linux SCSI Target Infrastructure]     [Kernel Newbies]     [IDE]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux ATA RAID]     [Linux IIO]     [Samba]     [Device Mapper]
  Powered by Linux