]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
Fix qlogicpti DMA unmapping
authorDavid Miller <davem@davemloft.net>
Tue, 17 Apr 2007 21:35:07 +0000 (14:35 -0700)
committerGreg Kroah-Hartman <gregkh@suse.de>
Wed, 2 May 2007 00:05:57 +0000 (17:05 -0700)
[SCSI] QLOGICPTI: Do not unmap DMA unless we actually mapped something.

We only map DMA when cmd->request_bufflen is non-zero for non-sg
buffers, we thus should make the same check when unmapping.

Based upon a report from Pasi Pirhonen.

Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
drivers/scsi/qlogicpti.c

index 9b827ceec50125734cd6ef3cafebb6f87949d4fe..9f10689905a8d68c3eb7be4b00561c52f7f6ac23 100644 (file)
@@ -1281,7 +1281,7 @@ static struct scsi_cmnd *qlogicpti_intr_handler(struct qlogicpti *qpti)
                                      (struct scatterlist *)Cmnd->request_buffer,
                                      Cmnd->use_sg,
                                      Cmnd->sc_data_direction);
-               } else {
+               } else if (Cmnd->request_bufflen) {
                        sbus_unmap_single(qpti->sdev,
                                          (__u32)((unsigned long)Cmnd->SCp.ptr),
                                          Cmnd->request_bufflen,