SCSI: scsi_task_get_status add getter function for task status and sense

Signed-off-by: Ronnie Sahlberg <ronniesahlberg@gmail.com>
This commit is contained in:
Ronnie Sahlberg
2014-12-19 08:33:21 -08:00
parent 0c6e3bffb3
commit 8c4a579cda
4 changed files with 14 additions and 0 deletions

View File

@@ -512,6 +512,7 @@ EXTERN int iscsi_nop_out_async(struct iscsi_context *iscsi, iscsi_command_cb cb,
EXTERN int iscsi_get_nops_in_flight(struct iscsi_context *iscsi); EXTERN int iscsi_get_nops_in_flight(struct iscsi_context *iscsi);
struct scsi_task; struct scsi_task;
struct scsi_sense;
enum iscsi_task_mgmt_funcs { enum iscsi_task_mgmt_funcs {
ISCSI_TM_ABORT_TASK = 0x01, ISCSI_TM_ABORT_TASK = 0x01,
@@ -1127,6 +1128,8 @@ struct scsi_iovec;
EXTERN void scsi_task_set_iov_out(struct scsi_task *task, struct scsi_iovec *iov, int niov); EXTERN void scsi_task_set_iov_out(struct scsi_task *task, struct scsi_iovec *iov, int niov);
EXTERN void scsi_task_set_iov_in(struct scsi_task *task, struct scsi_iovec *iov, int niov); EXTERN void scsi_task_set_iov_in(struct scsi_task *task, struct scsi_iovec *iov, int niov);
EXTERN int scsi_task_get_status(struct scsi_task *task, struct scsi_sense *sense);
/* /*
* This function is used when you want to cancel a scsi task. * This function is used when you want to cancel a scsi task.
* The callback for the task will immediately be invoked with SCSI_STATUS_CANCELLED. * The callback for the task will immediately be invoked with SCSI_STATUS_CANCELLED.

View File

@@ -223,6 +223,7 @@ scsi_set_uint32
scsi_set_uint64 scsi_set_uint64
scsi_task_add_data_in_buffer scsi_task_add_data_in_buffer
scsi_task_add_data_out_buffer scsi_task_add_data_out_buffer
scsi_task_get_status
scsi_task_set_iov_in scsi_task_set_iov_in
scsi_task_set_iov_out scsi_task_set_iov_out
scsi_version_to_str scsi_version_to_str

View File

@@ -222,6 +222,7 @@ scsi_set_uint32
scsi_set_uint64 scsi_set_uint64
scsi_task_add_data_in_buffer scsi_task_add_data_in_buffer
scsi_task_add_data_out_buffer scsi_task_add_data_out_buffer
scsi_task_get_status
scsi_task_set_iov_in scsi_task_set_iov_in
scsi_task_set_iov_out scsi_task_set_iov_out
scsi_version_to_str scsi_version_to_str

View File

@@ -3857,3 +3857,12 @@ scsi_task_add_data_out_buffer(struct scsi_task *task, int len, unsigned char *bu
{ {
return scsi_iovector_add(task, &task->iovector_out, len, buf); return scsi_iovector_add(task, &task->iovector_out, len, buf);
} }
int
scsi_task_get_status(struct scsi_task *task, struct scsi_sense *sense)
{
if (sense) {
memcpy(sense, &task->sense, sizeof(struct scsi_sense));
}
return task->status;
}