summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorWayne Boyer <wayneb@linux.vnet.ibm.com>2010-05-14 08:55:13 -0700
committerJames Bottomley <James.Bottomley@suse.de>2010-05-24 11:11:06 -0500
commitb8803b1cef28af785c4e903b9b1449898d68c758 (patch)
tree7415f2759f91ed85db4219bbd27992a8a6d2ad0d
parent7be96900a2a662c67403559acd250f011b1d70db (diff)
downloadop-kernel-dev-b8803b1cef28af785c4e903b9b1449898d68c758.zip
op-kernel-dev-b8803b1cef28af785c4e903b9b1449898d68c758.tar.gz
[SCSI] ipr: set the data list length in the request control block
In bring up testing for the new 64 bit adapters, the first read command failed after loading the driver. The cause was that the command requires more than one scatter gather element and the corresponding code to set the data list length in the request control block was missing. This patch adds the correct assignment. Signed-off-by: Wayne Boyer <wayneb@linux.vnet.ibm.com> Acked-by: Brian King <brking@linux.vnet.ibm.com> Signed-off-by: James Bottomley <James.Bottomley@suse.de>
-rw-r--r--drivers/scsi/ipr.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/scsi/ipr.c b/drivers/scsi/ipr.c
index 2f280d0..5244282 100644
--- a/drivers/scsi/ipr.c
+++ b/drivers/scsi/ipr.c
@@ -5021,6 +5021,8 @@ static int ipr_build_ioadl64(struct ipr_ioa_cfg *ioa_cfg,
ipr_cmd->dma_use_sg = nseg;
ioarcb->data_transfer_length = cpu_to_be32(length);
+ ioarcb->ioadl_len =
+ cpu_to_be32(sizeof(struct ipr_ioadl64_desc) * ipr_cmd->dma_use_sg);
if (scsi_cmd->sc_data_direction == DMA_TO_DEVICE) {
ioadl_flags = IPR_IOADL_FLAGS_WRITE;
OpenPOWER on IntegriCloud