Subject: [PATCH] aic7xxx driver. Restrict DMA to 32bit for 29320LPE
Adaptec SCSI controller
Contribution:
Anil Ravindranath <[EMAIL PROTECTED]>
Issue:
Data Bursts that cross from 32- to 64-Bit address space have incorrect
address for 29320LPE. This leads to potential data corruption.
Fix:
Restrict DMA to 32bit so that it does not cross 4GB boundary.
Change Log:
Restrict DMA to 32bit for 29320LPE so that it does not cross 4GB
boundary
Patch: apply to scsi-misc-2.6.git development tree
Signed off By: Anil Ravindranath <[EMAIL PROTECTED]>
diff -urN a/drivers/scsi/aic7xxx/aic79xx_osm_pci.c
b/drivers/scsi/aic7xxx/aic79xx_osm_pci.c
--- a/drivers/scsi/aic7xxx/aic79xx_osm_pci.c 2007-06-30
05:24:08.000000000 -0700
+++ b/drivers/scsi/aic7xxx/aic79xx_osm_pci.c 2007-06-30
05:25:40.000000000 -0700
@@ -161,7 +161,10 @@
}
pci_set_master(pdev);
- if (sizeof(dma_addr_t) > 4) {
+ /*
+ * Restrict DMA to 32bit for 29320LPE
+ */
+ if ((sizeof(dma_addr_t) > 4) && (entry->full_id !=
ID_AHA_29320LPE)) {
const u64 required_mask = dma_get_required_mask(dev);
if (required_mask > DMA_39BIT_MASK &&
diffstat output:
aic79xx_osm_pci.c | 5 ++++-
1 files changed, 4 insertions(+), 1 deletion(-)
With regards,
Anil
-
To unsubscribe from this list: send the line "unsubscribe linux-scsi" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at http://vger.kernel.org/majordomo-info.html