diff options
author | Joerg Roedel <joerg.roedel@amd.com> | 2011-04-07 06:16:10 (GMT) |
---|---|---|
committer | Joerg Roedel <joerg.roedel@amd.com> | 2011-04-07 09:04:32 (GMT) |
commit | 7d0c5cc5be73f7ce26fdcca7b8ec2203f661eb93 (patch) | |
tree | fbe4ff16580783316f3b2435130865f45387a4c3 /arch/x86/include/asm | |
parent | d8c13085775c72e2d46edc54ed0c803c3a944ddb (diff) | |
download | linux-fsl-qoriq-7d0c5cc5be73f7ce26fdcca7b8ec2203f661eb93.tar.xz |
x86/amd-iommu: Flush all internal TLBs when IOMMUs are enabled
The old code only flushed a DTE or a domain TLB before it is
actually used by the IOMMU driver. While this is efficient
and works when done right it is more likely to introduce new
bugs when changing code (which happened in the past).
This patch adds code to flush all DTEs and all domain TLBs
in each IOMMU right after it is enabled (at boot and after
resume). This reduces the complexity of the driver and makes
it less likely to introduce stale-TLB bugs in the future.
Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
Diffstat (limited to 'arch/x86/include/asm')
-rw-r--r-- | arch/x86/include/asm/amd_iommu_proto.h | 2 |
1 files changed, 0 insertions, 2 deletions
diff --git a/arch/x86/include/asm/amd_iommu_proto.h b/arch/x86/include/asm/amd_iommu_proto.h index 916bc81..1223c0f 100644 --- a/arch/x86/include/asm/amd_iommu_proto.h +++ b/arch/x86/include/asm/amd_iommu_proto.h @@ -24,8 +24,6 @@ struct amd_iommu; extern int amd_iommu_init_dma_ops(void); extern int amd_iommu_init_passthrough(void); extern irqreturn_t amd_iommu_int_handler(int irq, void *data); -extern void amd_iommu_flush_all_domains(void); -extern void amd_iommu_flush_all_devices(void); extern void amd_iommu_apply_erratum_63(u16 devid); extern void amd_iommu_reset_cmd_buffer(struct amd_iommu *iommu); extern int amd_iommu_init_devices(void); |