summaryrefslogtreecommitdiffstats
path: root/sys/dev/twa/tw_cl_intr.c
diff options
context:
space:
mode:
authordelphij <delphij@FreeBSD.org>2010-08-30 19:15:04 +0000
committerdelphij <delphij@FreeBSD.org>2010-08-30 19:15:04 +0000
commitd2ed74818d75c30ee5ed1a7309cda803e93f9656 (patch)
tree77eaa0d5ab53d4b0e086f94a1b7c8f9173351032 /sys/dev/twa/tw_cl_intr.c
parent3cf9c58268317dd153bdb1a1307860ce3701edb8 (diff)
downloadFreeBSD-src-d2ed74818d75c30ee5ed1a7309cda803e93f9656.zip
FreeBSD-src-d2ed74818d75c30ee5ed1a7309cda803e93f9656.tar.gz
Vendor update to version 3.80.06.003 to fix a panic with ZFS when under
heavy I/O load. Many thanks to LSI for continuing to support FreeBSD. PR: kern/149968 Submitted by: LSI (Tom Couch) Reported by: Kai Kockro <kkockro web de> Tested by: Kai Kockro, jpaetzel MFC after: 7 days
Diffstat (limited to 'sys/dev/twa/tw_cl_intr.c')
-rw-r--r--sys/dev/twa/tw_cl_intr.c13
1 files changed, 8 insertions, 5 deletions
diff --git a/sys/dev/twa/tw_cl_intr.c b/sys/dev/twa/tw_cl_intr.c
index 08d63f9..a7c90d3 100644
--- a/sys/dev/twa/tw_cl_intr.c
+++ b/sys/dev/twa/tw_cl_intr.c
@@ -248,8 +248,7 @@ tw_cli_process_resp_intr(struct tw_cli_ctlr_context *ctlr)
#ifdef TW_OSL_DEBUG
tw_cl_print_ctlr_stats(ctlr->ctlr_handle);
#endif /* TW_OSL_DEBUG */
- tw_cl_reset_ctlr(ctlr->ctlr_handle);
- return(TW_OSL_EIO);
+ continue;
}
/*
@@ -402,9 +401,7 @@ tw_cli_complete_io(struct tw_cli_req_context *req)
#ifdef TW_OSL_DEBUG
tw_cl_print_ctlr_stats(ctlr->ctlr_handle);
#endif /* TW_OSL_DEBUG */
- tw_cl_reset_ctlr(ctlr->ctlr_handle);
- req_pkt->status = TW_CL_ERR_REQ_BUS_RESET;
- goto out;
+ return;
}
if (req->flags & TW_CLI_REQ_FLAGS_PASSTHRU) {
@@ -483,6 +480,7 @@ tw_cli_scsi_complete(struct tw_cli_req_context *req)
cdb[8], cdb[9], cdb[10], cdb[11],
cdb[12], cdb[13], cdb[14], cdb[15]);
+#if 0
/*
* Print the error. Firmware doesn't yet support
* the 'Mode Sense' cmd. Don't print if the cmd
@@ -493,6 +491,7 @@ tw_cli_scsi_complete(struct tw_cli_req_context *req)
tw_cli_create_ctlr_event(req->ctlr,
TW_CL_MESSAGE_SOURCE_CONTROLLER_ERROR,
cmd_hdr);
+#endif // 0
}
if (scsi_req->sense_data) {
@@ -530,9 +529,11 @@ tw_cli_param_callback(struct tw_cli_req_context *req)
*/
if (! req->error_code)
if (cmd->param.status) {
+#if 0
tw_cli_create_ctlr_event(ctlr,
TW_CL_MESSAGE_SOURCE_CONTROLLER_ERROR,
&(req->cmd_pkt->cmd_hdr));
+#endif // 0
tw_cl_create_event(ctlr->ctlr_handle, TW_CL_FALSE,
TW_CL_MESSAGE_SOURCE_COMMON_LAYER_ERROR,
0x1204, 0x1, TW_CL_SEVERITY_ERROR_STRING,
@@ -590,9 +591,11 @@ tw_cli_aen_callback(struct tw_cli_req_context *req)
if ((error = cmd->status)) {
cmd_hdr = (struct tw_cl_command_header *)
(&(req->cmd_pkt->cmd_hdr));
+#if 0
tw_cli_create_ctlr_event(ctlr,
TW_CL_MESSAGE_SOURCE_CONTROLLER_ERROR,
cmd_hdr);
+#endif // 0
tw_cl_create_event(ctlr->ctlr_handle, TW_CL_FALSE,
TW_CL_MESSAGE_SOURCE_COMMON_LAYER_ERROR,
0x1206, 0x1, TW_CL_SEVERITY_ERROR_STRING,
OpenPOWER on IntegriCloud