[PATCH 3/5] megaraid_sas: Add resetwaittime module parameter

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

 



James/linux-scsi,

The following patch for megaraid_sas adds support for a resetwaittime
module parameter.  This allows a user to adjust the wait time in
seconds after I/O timeout before resetting the adapter.

Signed-off-by: Adam Radford <aradford@xxxxxxxxx>

diff -Naur scsi/drivers/scsi/megaraid/megaraid_sas_base.c
scsi.new/drivers/scsi/megaraid/megaraid_sas_base.c
--- scsi/drivers/scsi/megaraid/megaraid_sas_base.c	2012-07-17
14:44:04.341294660 -0700
+++ scsi.new/drivers/scsi/megaraid/megaraid_sas_base.c	2012-07-17
14:50:41.503232158 -0700
@@ -76,6 +76,11 @@
 MODULE_PARM_DESC(throttlequeuedepth,
 	"Adapter queue depth when throttled due to I/O timeout. Default: 16");

+int resetwaittime = MEGASAS_RESET_WAIT_TIME;
+module_param(resetwaittime, int, S_IRUGO);
+MODULE_PARM_DESC(resetwaittime, "Wait time in seconds after I/O timeout "
+		 "before resetting adapter. Default: 180");
+
 MODULE_LICENSE("GPL");
 MODULE_VERSION(MEGASAS_VERSION);
 MODULE_AUTHOR("megaraidlinux@xxxxxxx");
@@ -1778,7 +1783,7 @@
 		return SUCCESS;
 	}

-	for (i = 0; i < wait_time; i++) {
+	for (i = 0; i < resetwaittime; i++) {

 		int outstanding = atomic_read(&instance->fw_outstanding);

diff -Naur scsi/drivers/scsi/megaraid/megaraid_sas_fusion.c
scsi.new/drivers/scsi/megaraid/megaraid_sas_fusion.c
--- scsi/drivers/scsi/megaraid/megaraid_sas_fusion.c	2012-07-17
14:33:50.682231505 -0700
+++ scsi.new/drivers/scsi/megaraid/megaraid_sas_fusion.c	2012-07-17
14:54:56.487358768 -0700
@@ -94,6 +94,7 @@
 void megaraid_sas_kill_hba(struct megasas_instance *instance);

 extern u32 megasas_dbg_lvl;
+extern int resetwaittime;

 /**
  * megasas_enable_intr_fusion -	Enables interrupts
@@ -2063,9 +2064,9 @@
 int megasas_wait_for_outstanding_fusion(struct megasas_instance *instance)
 {
 	int i, outstanding, retval = 0;
-	u32 fw_state, wait_time = MEGASAS_RESET_WAIT_TIME;
+	u32 fw_state;

-	for (i = 0; i < wait_time; i++) {
+	for (i = 0; i < resetwaittime; i++) {
 		/* Check if firmware is in fault state */
 		fw_state = instance->instancet->read_fw_status_reg(
 			instance->reg_set) & MFI_STATE_MASK;

Attachment: megaraid_sas.patch3
Description: Binary data


[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