Print this page
NEX-9981 Deadman timer panic from idm_refcnt_wait_ref thread while offlining iSCSI targets
Reviewed by: Evan Layton <evan.layton@nexenta.com>
Reviewed by: Sanjay Nadkarni <sanjay.nadkarni@nexenta.com>
Reviewed by: Rob Gittins <rob.gittins@nexenta.com>
@@ -20,10 +20,11 @@
*/
/*
* Copyright 2009 Sun Microsystems, Inc. All rights reserved.
* Use is subject to license terms.
*
+ * Copyright 2017 Nexenta Systems, Inc. All rights reserved.
* iSCSI command interfaces
*/
#include "iscsi.h"
@@ -794,12 +795,12 @@
* calls us back. Set the status to use
* when we complete the command.
*/
ISCSI_CMD_SET_REASON_STAT(
t_icmdp, CMD_TIMEOUT, STAT_ABORTED);
- idm_task_abort(icp->conn_ic, t_icmdp->cmd_itp,
- AT_TASK_MGMT_ABORT);
+ (void) idm_task_abort(icp->conn_ic,
+ t_icmdp->cmd_itp, AT_TASK_MGMT_ABORT);
} else {
cv_broadcast(&t_icmdp->cmd_completion);
}
mutex_exit(&t_icmdp->cmd_mutex);
icmdp->cmd_un.abort.icmdp = NULL;
@@ -940,11 +941,11 @@
* calls us back. Set the status to use
* when we complete the command.
*/
ISCSI_CMD_SET_REASON_STAT(t_icmdp,
CMD_TIMEOUT, STAT_TIMEOUT);
- idm_task_abort(icp->conn_ic,
+ (void) idm_task_abort(icp->conn_ic,
t_icmdp->cmd_itp,
AT_TASK_MGMT_ABORT);
} else {
cv_broadcast(&t_icmdp->cmd_completion);
}
@@ -1025,11 +1026,11 @@
mutex_enter(&icp->conn_queue_idm_aborting.mutex);
iscsi_enqueue_idm_aborting_cmd(icmdp->cmd_conn, icmdp);
mutex_exit(&icp->conn_queue_idm_aborting.mutex);
ISCSI_CMD_SET_REASON_STAT(icmdp,
CMD_TRAN_ERR, icmdp->cmd_un.scsi.pkt_stat);
- idm_task_abort(icp->conn_ic, icmdp->cmd_itp,
+ (void) idm_task_abort(icp->conn_ic, icmdp->cmd_itp,
AT_TASK_MGMT_ABORT);
break;
case ISCSI_CMD_TYPE_NOP:
icmdp->cmd_state = ISCSI_CMD_STATE_FREE;
@@ -1206,11 +1207,11 @@
}
ISCSI_CMD_SET_REASON_STAT(icmdp,
CMD_TRAN_ERR, icmdp->cmd_un.scsi.pkt_stat);
- idm_task_abort(icmdp->cmd_conn->conn_ic, icmdp->cmd_itp,
+ (void) idm_task_abort(icmdp->cmd_conn->conn_ic, icmdp->cmd_itp,
AT_TASK_MGMT_ABORT);
break;
/* -E9: IDM is no longer processing this command */
case ISCSI_CMD_EVENT_E9: