summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBoaz Harrosh <bharrosh@panasas.com>2008-09-29 09:38:55 +0200
committerJens Axboe <jens.axboe@oracle.com>2008-09-29 09:41:56 +0200
commit7e6cfb54b1ff4b64d74aa8cd191204c9598c073d (patch)
tree2d7b396d77e9f4e8215df5f7236933853a7fd04d
parentIPoIB: Fix crash when path record fails after path flush (diff)
downloadlinux-7e6cfb54b1ff4b64d74aa8cd191204c9598c073d.tar.xz
linux-7e6cfb54b1ff4b64d74aa8cd191204c9598c073d.zip
scsi: fix fall out of sg-chaining patch in qlogicpti
Boaz writes: "I've reviewed all patches since Matthew's, and I find one small problem. In the load_cmd() there is a compound loop where the first 4 sg's are set then the rest are set into a memory structure in group of 7 sg's. Well the second 7-group and on is a bug because sg pointer does not advance. This is a fall out from Jens's patch." The reporter, Meelis Roos <mroos@ut.ee>, verified that this patch does indeed fix his problem with qlogicpti. Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
-rw-r--r--drivers/scsi/qlogicpti.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/scsi/qlogicpti.c b/drivers/scsi/qlogicpti.c
index 4a1cf6377f6c..905350896725 100644
--- a/drivers/scsi/qlogicpti.c
+++ b/drivers/scsi/qlogicpti.c
@@ -914,6 +914,7 @@ static inline int load_cmd(struct scsi_cmnd *Cmnd, struct Command_Entry *cmd,
ds[i].d_count = sg_dma_len(s);
}
sg_count -= n;
+ sg = s;
}
} else {
cmd->dataseg[0].d_base = 0;