diff options
author | Salyzyn, Mark <Mark_Salyzyn@adaptec.com> | 2008-01-11 14:46:44 -0500 |
---|---|---|
committer | James Bottomley <James.Bottomley@HansenPartnership.com> | 2008-01-23 12:29:24 -0500 |
commit | 3a0086a80ab7c2f1adb0e9b2a6fc82632979cec5 (patch) | |
tree | 35006c7f19099637b4bc33295f36a36f21486982 /drivers/scsi/aacraid | |
parent | 984621b4379cccbd0330e10622021a3cfe464ad5 (diff) |
[SCSI] aacraid: add call to flush_kernel_dcache_page
Some architectures require a call to flush_kernel_dcache_page for
processor spoofed DMA operations.
Signed-off-by: Mark Salyzyn <aacraid@adaptec.com>
Signed-off-by: James Bottomley <James.Bottomley@HansenPartnership.com>
Diffstat (limited to 'drivers/scsi/aacraid')
-rw-r--r-- | drivers/scsi/aacraid/aachba.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/scsi/aacraid/aachba.c b/drivers/scsi/aacraid/aachba.c index 3cddcc0901b2..970a8d99107a 100644 --- a/drivers/scsi/aacraid/aachba.c +++ b/drivers/scsi/aacraid/aachba.c | |||
@@ -31,9 +31,9 @@ | |||
31 | #include <linux/slab.h> | 31 | #include <linux/slab.h> |
32 | #include <linux/completion.h> | 32 | #include <linux/completion.h> |
33 | #include <linux/blkdev.h> | 33 | #include <linux/blkdev.h> |
34 | #include <linux/dma-mapping.h> | ||
35 | #include <asm/semaphore.h> | 34 | #include <asm/semaphore.h> |
36 | #include <asm/uaccess.h> | 35 | #include <asm/uaccess.h> |
36 | #include <linux/highmem.h> /* For flush_kernel_dcache_page */ | ||
37 | 37 | ||
38 | #include <scsi/scsi.h> | 38 | #include <scsi/scsi.h> |
39 | #include <scsi/scsi_cmnd.h> | 39 | #include <scsi/scsi_cmnd.h> |
@@ -366,6 +366,7 @@ static void aac_internal_transfer(struct scsi_cmnd *scsicmd, void *data, unsigne | |||
366 | if (buf && transfer_len > 0) | 366 | if (buf && transfer_len > 0) |
367 | memcpy(buf + offset, data, transfer_len); | 367 | memcpy(buf + offset, data, transfer_len); |
368 | 368 | ||
369 | flush_kernel_dcache_page(kmap_atomic_to_page(buf - sg->offset)); | ||
369 | kunmap_atomic(buf - sg->offset, KM_IRQ0); | 370 | kunmap_atomic(buf - sg->offset, KM_IRQ0); |
370 | 371 | ||
371 | } | 372 | } |