summaryrefslogtreecommitdiffstats
path: root/lib/dma-debug.c
diff options
context:
space:
mode:
authorMark Langsdorf <mark.langsdorf@amd.com>2009-07-05 22:50:52 +0200
committerIngo Molnar <mingo@elte.hu>2009-06-06 09:42:09 +0200
commitfe2245c905631a3a353504fc04388ce3dfaf9d9e (patch)
tree96ad07e4da2ca4fd92188ecdf3d7ebf1e33e3c3d /lib/dma-debug.c
parentMerge branches 'amd-iommu/fixes', 'amd-iommu/debug', 'amd-iommu/suspend-resum... (diff)
downloadlinux-fe2245c905631a3a353504fc04388ce3dfaf9d9e.tar.xz
linux-fe2245c905631a3a353504fc04388ce3dfaf9d9e.zip
x86: enable GART-IOMMU only after setting up protection methods
The current code to set up the GART as an IOMMU enables GART translations before it removes the aperture from the kernel memory map, sets the GART PTEs to UC, sets up the guard and scratch pages, or does a wbinvd(). This leaves the possibility of cache aliasing open and can cause system crashes. Re-order the code so as to enable the GART translations only after all safeguards are in place and the tlb has been flushed. AMD has tested this patch on both Istanbul systems and 1st generation Opteron systems with APG enabled and seen no adverse effects. Istanbul systems with HT Assist enabled sometimes see MCE errors due to cache artifacts with the unmodified code. Signed-off-by: Mark Langsdorf <mark.langsdorf@amd.com> Cc: <stable@kernel.org> Cc: Joerg Roedel <joerg.roedel@amd.com> Cc: akpm@linux-foundation.org Cc: jbarnes@virtuousgeek.org Signed-off-by: Ingo Molnar <mingo@elte.hu>
Diffstat (limited to 'lib/dma-debug.c')
0 files changed, 0 insertions, 0 deletions