diff options
author | FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp> | 2008-09-19 12:23:30 -0400 |
---|---|---|
committer | Ingo Molnar <mingo@elte.hu> | 2008-09-22 14:43:37 -0400 |
commit | afa9fdc2f5f8e4d98f3e77bfa204412cbc181346 (patch) | |
tree | 8e6c390d8dc18734f6071d2ddd7a2bca01fe9000 /arch/x86/kernel/amd_iommu.c | |
parent | ed6dc4981368aa8ac89b0ea61535cfa2b03533cb (diff) |
iommu: remove fullflush and nofullflush in IOMMU generic option
This patch against tip/x86/iommu virtually reverts
2842e5bf3115193f05dc9dac20f940e7abf44c1a. But just reverting the
commit breaks AMD IOMMU so this patch also includes some fixes.
The above commit adds new two options to x86 IOMMU generic kernel boot
options, fullflush and nofullflush. But such change that affects all
the IOMMUs needs more discussion (all IOMMU parties need the chance to
discuss it):
http://lkml.org/lkml/2008/9/19/106
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
Acked-by: Joerg Roedel <joerg.roedel@amd.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Diffstat (limited to 'arch/x86/kernel/amd_iommu.c')
-rw-r--r-- | arch/x86/kernel/amd_iommu.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/arch/x86/kernel/amd_iommu.c b/arch/x86/kernel/amd_iommu.c index 70537d117a96..c19212191c98 100644 --- a/arch/x86/kernel/amd_iommu.c +++ b/arch/x86/kernel/amd_iommu.c | |||
@@ -948,7 +948,7 @@ static dma_addr_t __map_single(struct device *dev, | |||
948 | } | 948 | } |
949 | address += offset; | 949 | address += offset; |
950 | 950 | ||
951 | if (unlikely(dma_dom->need_flush && !iommu_fullflush)) { | 951 | if (unlikely(dma_dom->need_flush && !amd_iommu_unmap_flush)) { |
952 | iommu_flush_tlb(iommu, dma_dom->domain.id); | 952 | iommu_flush_tlb(iommu, dma_dom->domain.id); |
953 | dma_dom->need_flush = false; | 953 | dma_dom->need_flush = false; |
954 | } else if (unlikely(iommu_has_npcache(iommu))) | 954 | } else if (unlikely(iommu_has_npcache(iommu))) |
@@ -985,7 +985,7 @@ static void __unmap_single(struct amd_iommu *iommu, | |||
985 | 985 | ||
986 | dma_ops_free_addresses(dma_dom, dma_addr, pages); | 986 | dma_ops_free_addresses(dma_dom, dma_addr, pages); |
987 | 987 | ||
988 | if (iommu_fullflush) | 988 | if (amd_iommu_unmap_flush) |
989 | iommu_flush_pages(iommu, dma_dom->domain.id, dma_addr, size); | 989 | iommu_flush_pages(iommu, dma_dom->domain.id, dma_addr, size); |
990 | } | 990 | } |
991 | 991 | ||