Re: X86_64 + VIA + 4g problems

From: Andi Kleen
Date: Mon Jan 02 2006 - 16:32:08 EST


Carsten Otto <c-otto@xxxxxx> writes:

[please don't strip cc lists like this - your email got nearly lost]

> On Mon, Jan 02, 2006 at 05:22:12PM +0100, Andi Kleen wrote:
> > When you not compile in the SKGE network driver does everything else work?
> > skge supports 64bit DMA, so it shouldn't use any IOMMU. But I'm somewhat
> > suspicious of the >4GB support in the VIA chipset. We had problems with
> > that before. It's possible that it's just not supported in the hardware
> > or that the BIOS sets up the MTRRs wrong.
>
> How can I find that out? Can I provide any useful material? VIA KT800Pro
> and 4GB RAM here..

What was unclear with my first question? Can you try that?
To repeat it again:

%% When you not compile in the SKGE network driver does everything else work?
%% skge supports 64bit DMA, so it shouldn't use any IOMMU.

Alternatively you can try with the appended patch. If that helps
then the chipset or the BIOS likely has some fundamental issue with >4GB.

-Andi

Index: linux-2.6.15rc7-work/arch/x86_64/kernel/pci-gart.c
===================================================================
--- linux-2.6.15rc7-work.orig/arch/x86_64/kernel/pci-gart.c
+++ linux-2.6.15rc7-work/arch/x86_64/kernel/pci-gart.c
@@ -630,6 +630,13 @@ void dma_unmap_sg(struct device *dev, st

int dma_supported(struct device *dev, u64 mask)
{
+#if 1
+ /* test patch for VIA quirk */
+ if (mask > 0xffffffff)
+ return 0;
+#endif
+
+
/* Copied from i386. Doesn't make much sense, because it will
only work for pci_alloc_coherent.
The caller just has to use GFP_DMA in this case. */




-
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/