[SCSI] ips: fix data buffer accessors conversion bug
This fixes a bug that can't handle a passthru command with more than two sg entries. Big thanks to Tim Pepper for debugging the problem. Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp> Acked-by: Mark Salyzyn <Mark_Salyzyn@adaptec.com> Cc: Stable Tree <stable@kernel.org> Signed-off-by: James Bottomley <James.Bottomley@HansenPartnership.com>
This commit is contained in:
parent
ff83efacf2
commit
2b28a4721e
|
@ -1576,7 +1576,7 @@ ips_make_passthru(ips_ha_t *ha, struct scsi_cmnd *SC, ips_scb_t *scb, int intr)
|
|||
METHOD_TRACE("ips_make_passthru", 1);
|
||||
|
||||
scsi_for_each_sg(SC, sg, scsi_sg_count(SC), i)
|
||||
length += sg[i].length;
|
||||
length += sg->length;
|
||||
|
||||
if (length < sizeof (ips_passthru_t)) {
|
||||
/* wrong size */
|
||||
|
|
Loading…
Reference in New Issue