[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Xen-devel] [PATCH for-4.12] xen/iommu: fix iommu_ops attribute



>>> On 01.02.19 at 16:13, <jgross@xxxxxxxx> wrote:
> --- a/xen/drivers/passthrough/amd/pci_amd_iommu.c
> +++ b/xen/drivers/passthrough/amd/pci_amd_iommu.c
> @@ -570,7 +570,7 @@ static void amd_dump_p2m_table(struct domain *d)
>      amd_dump_p2m_table_level(hd->arch.root_table, hd->arch.paging_mode, 0, 
> 0);
>  }
>  
> -static const struct iommu_ops __initconstrel amd_iommu_ops = {
> +static const struct iommu_ops amd_iommu_ops = {

This one's not needed - there's only an __init function referencing
this structure.

> --- a/xen/drivers/passthrough/vtd/iommu.c
> +++ b/xen/drivers/passthrough/vtd/iommu.c
> @@ -2706,7 +2706,7 @@ static void vtd_dump_p2m_table(struct domain *d)
>      vtd_dump_p2m_table_level(hd->arch.pgd_maddr, 
> agaw_to_level(hd->arch.agaw), 0, 0);
>  }
>  
> -const struct iommu_ops __initconstrel intel_iommu_ops = {
> +const struct iommu_ops intel_iommu_ops = {

This one's indeed referenced by a non-__init function, but the
fix is imo to avoid that reference from iommu_enable_x2apic_IR():
We should not overwrite the previously established (and
potentially subsequently adjusted) hook pointers. So I think
the assignment wants to go in a system_state dependent
conditional (and there is one a few lines up, so it could move
just there).

Jan



_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxxx
https://lists.xenproject.org/mailman/listinfo/xen-devel

 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.