Re: skge error; hangs w/ hardware memory hole

From: Andi Kleen
Date: Mon Jul 24 2006 - 22:33:56 EST


On Sunday 23 July 2006 08:32, Anthony DeRobertis wrote:
> Andreas Kleen wrote:
>
> >
> > You need to use iommu=soft swiotlb=force
> >
> > The standard IOMMU is also broken on VIA, but forced swiotlb should
> > work.
>
> Didn't work :-(

swiotlb=force is unfortunately broken right now.

But which this patch it should work. Does it?

-Andi

Test patch only: disable DMA over 4GB

Index: linux-2.6.17-work/arch/x86_64/kernel/pci-dma.c
===================================================================
--- linux-2.6.17-work.orig/arch/x86_64/kernel/pci-dma.c
+++ linux-2.6.17-work/arch/x86_64/kernel/pci-dma.c
@@ -202,7 +202,7 @@ int dma_set_mask(struct device *dev, u64
{
if (!dev->dma_mask || !dma_supported(dev, mask))
return -EIO;
- *dev->dma_mask = mask;
+ *dev->dma_mask = mask & 0xffffffff;
return 0;
}
EXPORT_SYMBOL(dma_set_mask);

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/