diff --git a/arch/x86/kernel/amd_iommu_init.c b/arch/x86/kernel/amd_iommu_init.c index ceba33811537..a69cc0f52042 100644 --- a/arch/x86/kernel/amd_iommu_init.c +++ b/arch/x86/kernel/amd_iommu_init.c @@ -972,10 +972,6 @@ int __init amd_iommu_init(void) if (acpi_table_parse("IVRS", init_memory_definitions) != 0) goto free; - ret = amd_iommu_init_dma_ops(); - if (ret) - goto free; - ret = sysdev_class_register(&amd_iommu_sysdev_class); if (ret) goto free; @@ -984,6 +980,10 @@ int __init amd_iommu_init(void) if (ret) goto free; + ret = amd_iommu_init_dma_ops(); + if (ret) + goto free; + enable_iommus(); printk(KERN_INFO "AMD IOMMU: aperture size is %d MB\n",