diff options
author | Kei Tokunaga <tokunaga.keiich@jp.fujitsu.com> | 2010-06-22 06:01:51 -0400 |
---|---|---|
committer | James Bottomley <James.Bottomley@suse.de> | 2010-07-27 13:03:52 -0400 |
commit | 97009a29e8c999def2d1e9ef253c226daf9541af (patch) | |
tree | 00adca4e2fac97f1348ca7c11e1d885978fef718 /drivers/message/fusion/mptctl.c | |
parent | e4bf25fbcc64a87d7dc1d3318ca56c28382757e2 (diff) |
[SCSI] mptfusion: print Doorbell register in a case of hard reset and timeout
Printing Doorbell register in a case of hard reset and timeout
should be useful for figuring out the state of the system.
Signed-off-by: Kei Tokunaga <tokunaga.keiich@jp.fujitsu.com>
Acked-by: "Desai, Kashyap" <Kashyap.Desai@lsi.com>
Signed-off-by: James Bottomley <James.Bottomley@suse.de>
Diffstat (limited to 'drivers/message/fusion/mptctl.c')
-rw-r--r-- | drivers/message/fusion/mptctl.c | 18 |
1 files changed, 14 insertions, 4 deletions
diff --git a/drivers/message/fusion/mptctl.c b/drivers/message/fusion/mptctl.c index 9bd89cebb5a9..40046f595f1c 100644 --- a/drivers/message/fusion/mptctl.c +++ b/drivers/message/fusion/mptctl.c | |||
@@ -954,9 +954,12 @@ retry_wait: | |||
954 | mpt_free_msg_frame(iocp, mf); | 954 | mpt_free_msg_frame(iocp, mf); |
955 | goto fwdl_out; | 955 | goto fwdl_out; |
956 | } | 956 | } |
957 | if (!timeleft) | 957 | if (!timeleft) { |
958 | printk(MYIOC_s_WARN_FMT | ||
959 | "FW download timeout, doorbell=0x%08x\n", | ||
960 | iocp->name, mpt_GetIocState(iocp, 0)); | ||
958 | mptctl_timeout_expired(iocp, mf); | 961 | mptctl_timeout_expired(iocp, mf); |
959 | else | 962 | } else |
960 | goto retry_wait; | 963 | goto retry_wait; |
961 | goto fwdl_out; | 964 | goto fwdl_out; |
962 | } | 965 | } |
@@ -2301,6 +2304,10 @@ retry_wait: | |||
2301 | goto done_free_mem; | 2304 | goto done_free_mem; |
2302 | } | 2305 | } |
2303 | if (!timeleft) { | 2306 | if (!timeleft) { |
2307 | printk(MYIOC_s_WARN_FMT | ||
2308 | "mpt cmd timeout, doorbell=0x%08x" | ||
2309 | " function=0x%x\n", | ||
2310 | ioc->name, mpt_GetIocState(ioc, 0), function); | ||
2304 | if (function == MPI_FUNCTION_SCSI_TASK_MGMT) | 2311 | if (function == MPI_FUNCTION_SCSI_TASK_MGMT) |
2305 | mutex_unlock(&ioc->taskmgmt_cmds.mutex); | 2312 | mutex_unlock(&ioc->taskmgmt_cmds.mutex); |
2306 | mptctl_timeout_expired(ioc, mf); | 2313 | mptctl_timeout_expired(ioc, mf); |
@@ -2608,9 +2615,12 @@ retry_wait: | |||
2608 | mpt_free_msg_frame(ioc, mf); | 2615 | mpt_free_msg_frame(ioc, mf); |
2609 | goto out; | 2616 | goto out; |
2610 | } | 2617 | } |
2611 | if (!timeleft) | 2618 | if (!timeleft) { |
2619 | printk(MYIOC_s_WARN_FMT | ||
2620 | "HOST INFO command timeout, doorbell=0x%08x\n", | ||
2621 | ioc->name, mpt_GetIocState(ioc, 0)); | ||
2612 | mptctl_timeout_expired(ioc, mf); | 2622 | mptctl_timeout_expired(ioc, mf); |
2613 | else | 2623 | } else |
2614 | goto retry_wait; | 2624 | goto retry_wait; |
2615 | goto out; | 2625 | goto out; |
2616 | } | 2626 | } |