forked from luck/tmp_suning_uos_patched
[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);
|
METHOD_TRACE("ips_make_passthru", 1);
|
||||||
|
|
||||||
scsi_for_each_sg(SC, sg, scsi_sg_count(SC), i)
|
scsi_for_each_sg(SC, sg, scsi_sg_count(SC), i)
|
||||||
length += sg[i].length;
|
length += sg->length;
|
||||||
|
|
||||||
if (length < sizeof (ips_passthru_t)) {
|
if (length < sizeof (ips_passthru_t)) {
|
||||||
/* wrong size */
|
/* wrong size */
|
||||||
|
Loading…
Reference in New Issue
Block a user