]> www.pilppa.org Git - linux-2.6-omap-h63xx.git/blobdiff - drivers/ide/ide-cd.c
ide-cd: fix DMA alignment regression
[linux-2.6-omap-h63xx.git] / drivers / ide / ide-cd.c
index 48b5eda3ab41688e3bf65a0a9e72831fb59a92a4..42ab6d8715f26c6018201e32cace684d15d7435b 100644 (file)
@@ -1250,7 +1250,8 @@ static void cdrom_do_block_pc(ide_drive_t *drive, struct request *rq)
                 * separate masks.
                 */
                alignment = queue_dma_alignment(q) | q->dma_pad_mask;
-               if ((unsigned long)buf & alignment || rq->data_len & alignment
+               if ((unsigned long)buf & alignment
+                   || rq->data_len & q->dma_pad_mask
                    || object_is_on_stack(buf))
                        drive->dma = 0;
        }