|
@@ -2114,18 +2114,22 @@ static void __init free_iommu_resources(void)
|
|
|
kmemleak_free(irq_lookup_table);
|
|
|
free_pages((unsigned long)irq_lookup_table,
|
|
|
get_order(rlookup_table_size));
|
|
|
+ irq_lookup_table = NULL;
|
|
|
|
|
|
kmem_cache_destroy(amd_iommu_irq_cache);
|
|
|
amd_iommu_irq_cache = NULL;
|
|
|
|
|
|
free_pages((unsigned long)amd_iommu_rlookup_table,
|
|
|
get_order(rlookup_table_size));
|
|
|
+ amd_iommu_rlookup_table = NULL;
|
|
|
|
|
|
free_pages((unsigned long)amd_iommu_alias_table,
|
|
|
get_order(alias_table_size));
|
|
|
+ amd_iommu_alias_table = NULL;
|
|
|
|
|
|
free_pages((unsigned long)amd_iommu_dev_table,
|
|
|
get_order(dev_table_size));
|
|
|
+ amd_iommu_dev_table = NULL;
|
|
|
|
|
|
free_iommu_all();
|
|
|
|
|
@@ -2195,6 +2199,7 @@ static void __init free_dma_resources(void)
|
|
|
{
|
|
|
free_pages((unsigned long)amd_iommu_pd_alloc_bitmap,
|
|
|
get_order(MAX_DOMAIN_ID/8));
|
|
|
+ amd_iommu_pd_alloc_bitmap = NULL;
|
|
|
|
|
|
free_unity_maps();
|
|
|
}
|