Skip to content

Commit

Permalink
x86/amd-iommu: Reimplement amd_iommu_flush_all_domains()
Browse files Browse the repository at this point in the history
This patch reimplementes the amd_iommu_flush_all_domains
function to use the global protection domain list instead
of flushing every domain on every IOMMU.

Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
  • Loading branch information
Joerg Roedel committed Nov 27, 2009
1 parent aeb26f5 commit e330666
Showing 1 changed file with 5 additions and 3 deletions.
8 changes: 5 additions & 3 deletions arch/x86/kernel/amd_iommu.c
Original file line number Diff line number Diff line change
Expand Up @@ -530,10 +530,12 @@ static void flush_all_domains_on_iommu(struct amd_iommu *iommu)

void amd_iommu_flush_all_domains(void)
{
struct amd_iommu *iommu;
struct protection_domain *domain;

for_each_iommu(iommu)
flush_all_domains_on_iommu(iommu);
list_for_each_entry(domain, &amd_iommu_pd_list, list) {
iommu_flush_tlb_pde(domain);
iommu_flush_complete(domain);
}
}

static void flush_all_devices_for_iommu(struct amd_iommu *iommu)
Expand Down

0 comments on commit e330666

Please sign in to comment.