Question about iommu on x86_64 and radeon driver.

From: Daniel Haid
Date: Sun May 22 2011 - 18:13:48 EST


I have an x86_64 system with a VIA chipset and 4GB of RAM. The mainboard
is an ASUS M2V where the bios-setup has an option called "Map around
memory hole" and I have an "ATI Technologies Inc RV710 [Radeon HD 4350]"
graphics card according to lspci.

Now one of the following things happen to my system:

1) With the bios-option enabled and no kernel parameters I get the following error:

[drm:r600_ring_test] *ERROR* radeon: ring test failed (scratch(0x8504)=0xCAFEDEAD)
radeon 0000:02:00.0: disabling GPU acceleration

and then I can not use any 3d-acceleration. I also get the message

Looks like a VIA chipset. Disabling IOMMU. Override with iommu=allowed

2) With the bios-option enabled and "mem=3072M" I can not use only 3GB of RAM,
but the radeon card works.

3) With the bios-option enabled and "iommu=allowed" I get 4GB of RAM and
the radeon card works. But I wonder whether this can have any bad effects?

4) Without the bios-option (and without any kernel parameters) I do not
get the "Looks like a VIA chipset. Disabling IOMMU. Override with iommu=allowed"
message, but strangely linux shows only about 3GB of RAM.

I did not try other combinations. Now my questions are

A) Is this a bug in the radeon driver? Or maybe not, since Documentation/x86/x86_64/boot-options.txt
seems to imply that for >3GB an iommu is required?

B) Is it safe to use iommu=allowed in my case ? If not, what problems will I encounter and what
options should I use instead? Will I be stuck with 3GB of RAM?

Please cc me if you answer, since I am not subscribed.

Thank you.

To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at
Please read the FAQ at