File 5cdeac7f-AMD-IOMMU-adjust-IOMMU-list-head-init.patch of Package xen.28173
# Commit f6c1247184b6a5cfa57491f0ec4483896789fda6
# Date 2019-05-17 14:43:43 +0200
# Author Jan Beulich <jbeulich@suse.com>
# Committer Jan Beulich <jbeulich@suse.com>
AMD/IOMMU: adjust IOMMU list head initialization
Do this statically, which will allow accessing the (empty) list even
without having come through acpi_ivrs_init().
Signed-off-by: Jan Beulich <jbeulich@suse.com>
Reviewed-by: Andrew Cooper <andrew.cooper3@citrix.com>
--- a/xen/drivers/passthrough/amd/iommu_init.c
+++ b/xen/drivers/passthrough/amd/iommu_init.c
@@ -36,7 +36,7 @@ static struct tasklet amd_iommu_irq_task
unsigned int __read_mostly ivrs_bdf_entries;
u8 __read_mostly ivhd_type;
static struct radix_tree_root ivrs_maps;
-struct list_head amd_iommu_head;
+LIST_HEAD_READ_MOSTLY(amd_iommu_head);
struct table_struct device_table;
bool_t iommuv2_enabled;
--- a/xen/drivers/passthrough/amd/pci_amd_iommu.c
+++ b/xen/drivers/passthrough/amd/pci_amd_iommu.c
@@ -280,8 +280,6 @@ static int __must_check amd_iommu_setup_
int __init acpi_ivrs_init(void)
{
- INIT_LIST_HEAD(&amd_iommu_head);
-
if ( !iommu_enable && !iommu_intremap )
return 0;