aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/message
diff options
context:
space:
mode:
authorKashyap, Desai <kashyap.desai@lsi.com>2010-03-18 09:44:51 -0400
committerJames Bottomley <James.Bottomley@suse.de>2010-04-11 10:24:06 -0400
commitb3b97316d5861b1708cd7ef2df9989d12d97acb9 (patch)
tree883371745da007d5f4f3a716cd633dd1f8af23e4 /drivers/message
parent7d757f18554070e917f61e7caedf395f940cf853 (diff)
[SCSI] mptfusion: mpt config will do Hard Reset based upon retry counts
mpt_config would only attempt a MUR before retrying the command. The driver will now retry a second time with a hard reset before leaving the function. Signed-off-by: Kashyap Desai <kashyap.desai@lsi.com> Signed-off-by: James Bottomley <James.Bottomley@suse.de>
Diffstat (limited to 'drivers/message')
-rw-r--r--drivers/message/fusion/mptbase.c9
1 files changed, 7 insertions, 2 deletions
diff --git a/drivers/message/fusion/mptbase.c b/drivers/message/fusion/mptbase.c
index a4f023bd5d2b..a6a57011ba6c 100644
--- a/drivers/message/fusion/mptbase.c
+++ b/drivers/message/fusion/mptbase.c
@@ -6456,10 +6456,15 @@ out:
6456 issue_hard_reset = 0; 6456 issue_hard_reset = 0;
6457 printk(MYIOC_s_WARN_FMT "Issuing Reset from %s!!\n", 6457 printk(MYIOC_s_WARN_FMT "Issuing Reset from %s!!\n",
6458 ioc->name, __func__); 6458 ioc->name, __func__);
6459 mpt_Soft_Hard_ResetHandler(ioc, CAN_SLEEP); 6459 if (retry_count == 0) {
6460 if (mpt_Soft_Hard_ResetHandler(ioc, CAN_SLEEP) != 0)
6461 retry_count++;
6462 } else
6463 mpt_HardResetHandler(ioc, CAN_SLEEP);
6464
6460 mpt_free_msg_frame(ioc, mf); 6465 mpt_free_msg_frame(ioc, mf);
6461 /* attempt one retry for a timed out command */ 6466 /* attempt one retry for a timed out command */
6462 if (!retry_count) { 6467 if (retry_count < 2) {
6463 printk(MYIOC_s_INFO_FMT 6468 printk(MYIOC_s_INFO_FMT
6464 "Attempting Retry Config request" 6469 "Attempting Retry Config request"
6465 " type 0x%x, page 0x%x," 6470 " type 0x%x, page 0x%x,"