srp_data_length helper function returns the data transfer length from an SRP_CMD request. Signed-off-by: FUJITA Tomonori <fujita.tomonori@xxxxxxxxxxxxx> --- drivers/scsi/libsrp.c | 12 +++--------- include/scsi/libsrp.h | 10 +++++++++- 2 files changed, 12 insertions(+), 10 deletions(-) diff --git a/drivers/scsi/libsrp.c b/drivers/scsi/libsrp.c index ff6a28c..01c4010 100644 --- a/drivers/scsi/libsrp.c +++ b/drivers/scsi/libsrp.c @@ -30,13 +30,6 @@ #include <scsi/srp.h> #include <scsi/libsrp.h> -enum srp_task_attributes { - SRP_SIMPLE_TASK = 0, - SRP_HEAD_TASK = 1, - SRP_ORDERED_TASK = 2, - SRP_ACA_TASK = 4 -}; - /* tmp - will replace with SCSI logging stuff */ #define eprintk(fmt, args...) \ do { \ @@ -363,7 +356,7 @@ int srp_transfer_data(struct scsi_cmnd *sc, struct srp_cmd *cmd, } EXPORT_SYMBOL_GPL(srp_transfer_data); -static int vscsis_data_length(struct srp_cmd *cmd, enum dma_data_direction dir) +int srp_data_length(struct srp_cmd *cmd, enum dma_data_direction dir) { struct srp_direct_buf *md; struct srp_indirect_buf *id; @@ -394,6 +387,7 @@ static int vscsis_data_length(struct srp_cmd *cmd, enum dma_data_direction dir) } return len; } +EXPORT_SYMBOL_GPL(srp_data_length); int srp_cmd_queue(struct Scsi_Host *shost, struct srp_cmd *cmd, void *info, u64 itn_id, u64 addr) @@ -418,7 +412,7 @@ int srp_cmd_queue(struct Scsi_Host *shost, struct srp_cmd *cmd, void *info, } dir = srp_cmd_direction(cmd); - len = vscsis_data_length(cmd, dir); + len = srp_data_length(cmd, dir); dprintk("%p %x %lx %d %d %d %llx\n", info, cmd->cdb[0], cmd->lun, dir, len, tag, (unsigned long long) cmd->tag); diff --git a/include/scsi/libsrp.h b/include/scsi/libsrp.h index f4105c9..f5ebdbf 100644 --- a/include/scsi/libsrp.h +++ b/include/scsi/libsrp.h @@ -7,6 +7,13 @@ #include <scsi/scsi_host.h> #include <scsi/srp.h> +enum srp_task_attributes { + SRP_SIMPLE_TASK = 0, + SRP_HEAD_TASK = 1, + SRP_ORDERED_TASK = 2, + SRP_ACA_TASK = 4 +}; + enum iue_flags { V_DIOVER, V_WRITE, @@ -64,7 +71,6 @@ extern int srp_cmd_queue(struct Scsi_Host *, struct srp_cmd *, void *, u64, u64) extern int srp_transfer_data(struct scsi_cmnd *, struct srp_cmd *, srp_rdma_t, int, int); - static inline struct srp_target *host_to_srp_target(struct Scsi_Host *host) { return (struct srp_target *) host->hostdata; @@ -75,4 +81,6 @@ static inline int srp_cmd_direction(struct srp_cmd *cmd) return (cmd->buf_fmt >> 4) ? DMA_TO_DEVICE : DMA_FROM_DEVICE; } +extern int srp_data_length(struct srp_cmd *cmd, enum dma_data_direction dir); + #endif -- 1.7.2.3 -- To unsubscribe from this list: send the line "unsubscribe linux-scsi" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html