I found that the patch Robert has provided hasn't gone into 2.6.24-rc5 so maybe 
it is not working.

At the same time I did apply a small patch to 2.6.24-rc5 that seems to fix the 
issue.

I feel this could just be added to 2.6.24-rc5 without Robert's patch because of 
Jeff Garzik's" sata_nv: don't use legacy DMA in ADMA mode (v3)" patch.

It doesn't work without this patch because there is an allocation of memory 
from  hpriv before the mask can be set.

Please review.

Signed-off-by: Shyam Iyer

--- sata_nv.c.orig      2007-12-17 21:08:12.000000000 +0530
+++ sata_nv.c   2007-12-17 21:08:25.000000000 +0530
@@ -2407,6 +2407,12 @@
                        type = GENERIC;
        }
 
+       /* set 64bit dma masks, may fail */
+       if (type == ADMA) {
+               if (pci_set_dma_mask(pdev, DMA_64BIT_MASK) == 0)
+                       pci_set_consistent_dma_mask(pdev, DMA_64BIT_MASK);
+       }
+
        ppi[0] = &nv_port_info[type];
        rc = ata_pci_prepare_sff_host(pdev, ppi, &host);
        if (rc)
@@ -2418,12 +2424,6 @@
        hpriv->type = type;
        host->private_data = hpriv;
 
-       /* set 64bit dma masks, may fail */
-       if (type == ADMA) {
-               if (pci_set_dma_mask(pdev, DMA_64BIT_MASK) == 0)
-                       pci_set_consistent_dma_mask(pdev, DMA_64BIT_MASK);
-       }
-
        /* request and iomap NV_MMIO_BAR */
        rc = pcim_iomap_regions(pdev, 1 << NV_MMIO_BAR, DRV_NAME);
        if (rc)


--
This message was sent on behalf of [EMAIL PROTECTED] at openSubscriber.com
http://www.opensubscriber.com/message/linux-kernel@vger.kernel.org/8211470.html
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to