[XEN PATCH v2 0/3] x86/iommu: Drop IOMMU support when cx16 isn't supported

Teddy Astie posted 3 patches 3 weeks, 4 days ago
Patches applied successfully (tree, apply log)
git fetch https://gitlab.com/xen-project/patchew/xen tags/patchew/cover.1712580356.git.teddy.astie@vates.tech
There is a newer version of this series
xen/arch/x86/apic.c                         |  6 ++
xen/drivers/passthrough/amd/iommu_map.c     | 42 ++++------
xen/drivers/passthrough/amd/pci_amd_iommu.c |  6 ++
xen/drivers/passthrough/vtd/intremap.c      | 65 ++++-----------
xen/drivers/passthrough/vtd/iommu.c         | 92 +++++++--------------
xen/drivers/passthrough/vtd/vtd.h           |  5 +-
6 files changed, 71 insertions(+), 145 deletions(-)
[XEN PATCH v2 0/3] x86/iommu: Drop IOMMU support when cx16 isn't supported
Posted by Teddy Astie 3 weeks, 4 days ago
All hardware that supports VT-d/AMD-Vi that exists also supports cx16 (aside
specifically crafted virtual machines).

Some IOMMU code paths in Xen consider cases where VT-d/AMD-Vi is supported
while cx16 isn't, those paths may be bugged and are barely tested, dead code
in practice.

Disable IOMMU in case we have IOMMU hardware but no cx16, then cleanup
no-cx16 handling logic from VT-d and AMD-Vi drivers.

Teddy

Changed in v2:

 * Added cleanup no-cx16 code for x2APIC
 * Fixed commit and code formatting
 * Added missing Suggested-by note

Teddy Astie (3):
  VT-d: Disable IOMMU if cx16 isn't supported
  AMD-Vi: Disable IOMMU if cx16 isn't supported
  VT-d: Cleanup MAP_SINGLE_DEVICE and related code

 xen/arch/x86/apic.c                         |  6 ++
 xen/drivers/passthrough/amd/iommu_map.c     | 42 ++++------
 xen/drivers/passthrough/amd/pci_amd_iommu.c |  6 ++
 xen/drivers/passthrough/vtd/intremap.c      | 65 ++++-----------
 xen/drivers/passthrough/vtd/iommu.c         | 92 +++++++--------------
 xen/drivers/passthrough/vtd/vtd.h           |  5 +-
 6 files changed, 71 insertions(+), 145 deletions(-)

-- 
2.44.0



Teddy Astie | Vates XCP-ng Intern

XCP-ng & Xen Orchestra - Vates solutions

web: https://vates.tech
Re: [XEN PATCH v2 0/3] x86/iommu: Drop IOMMU support when cx16 isn't supported
Posted by Andrew Cooper 3 weeks, 1 day ago
On 08/04/2024 2:02 pm, Teddy Astie wrote:
> All hardware that supports VT-d/AMD-Vi that exists also supports cx16 (aside
> specifically crafted virtual machines).
>
> Some IOMMU code paths in Xen consider cases where VT-d/AMD-Vi is supported
> while cx16 isn't, those paths may be bugged and are barely tested, dead code
> in practice.
>
> Disable IOMMU in case we have IOMMU hardware but no cx16, then cleanup
> no-cx16 handling logic from VT-d and AMD-Vi drivers.
>
> Teddy
>
> Changed in v2:
>
>  * Added cleanup no-cx16 code for x2APIC
>  * Fixed commit and code formatting
>  * Added missing Suggested-by note
>
> Teddy Astie (3):
>   VT-d: Disable IOMMU if cx16 isn't supported
>   AMD-Vi: Disable IOMMU if cx16 isn't supported
>   VT-d: Cleanup MAP_SINGLE_DEVICE and related code
>
>  xen/arch/x86/apic.c                         |  6 ++
>  xen/drivers/passthrough/amd/iommu_map.c     | 42 ++++------
>  xen/drivers/passthrough/amd/pci_amd_iommu.c |  6 ++
>  xen/drivers/passthrough/vtd/intremap.c      | 65 ++++-----------
>  xen/drivers/passthrough/vtd/iommu.c         | 92 +++++++--------------
>  xen/drivers/passthrough/vtd/vtd.h           |  5 +-
>  6 files changed, 71 insertions(+), 145 deletions(-)
>

Sorry, but you've sent out two copies of each patch in this series, and
it's not clear if they're identical or not.

Please could you send out another version, making sure there's only one
of each patch.

Also, you need to swap ENOSYS with ENODEV, as per Jan's review on v1.

Thanks,

~Andrew
Re: [XEN PATCH v2 0/3] x86/iommu: Drop IOMMU support when cx16 isn't supported
Posted by Teddy Astie 3 weeks ago
Le 11/04/2024 à 22:05, Andrew Cooper a écrit :
> On 08/04/2024 2:02 pm, Teddy Astie wrote:
>> All hardware that supports VT-d/AMD-Vi that exists also supports cx16 (aside
>> specifically crafted virtual machines).
>>
>> Some IOMMU code paths in Xen consider cases where VT-d/AMD-Vi is supported
>> while cx16 isn't, those paths may be bugged and are barely tested, dead code
>> in practice.
>>
>> Disable IOMMU in case we have IOMMU hardware but no cx16, then cleanup
>> no-cx16 handling logic from VT-d and AMD-Vi drivers.
>>
>> Teddy
>>
>> Changed in v2:
>>
>>   * Added cleanup no-cx16 code for x2APIC
>>   * Fixed commit and code formatting
>>   * Added missing Suggested-by note
>>
>> Teddy Astie (3):
>>    VT-d: Disable IOMMU if cx16 isn't supported
>>    AMD-Vi: Disable IOMMU if cx16 isn't supported
>>    VT-d: Cleanup MAP_SINGLE_DEVICE and related code
>>
>>   xen/arch/x86/apic.c                         |  6 ++
>>   xen/drivers/passthrough/amd/iommu_map.c     | 42 ++++------
>>   xen/drivers/passthrough/amd/pci_amd_iommu.c |  6 ++
>>   xen/drivers/passthrough/vtd/intremap.c      | 65 ++++-----------
>>   xen/drivers/passthrough/vtd/iommu.c         | 92 +++++++--------------
>>   xen/drivers/passthrough/vtd/vtd.h           |  5 +-
>>   6 files changed, 71 insertions(+), 145 deletions(-)
>>
> 
> Sorry, but you've sent out two copies of each patch in this series, and
> it's not clear if they're identical or not.
> 
> Please could you send out another version, making sure there's only one
> of each patch.
> 
> Also, you need to swap ENOSYS with ENODEV, as per Jan's review on v1.
> 
> Thanks,
> 
> ~Andrew

Hello,

Not entirely sure why it got sent twice, as marek said he only received 
it once. Will double-check next time to avoid this issue in case I 
wrongfully sent it twice.

Will also swap ENOSYS with ENODEV in the next version.

Thanks,

Teddy


Teddy Astie | Vates XCP-ng Intern

XCP-ng & Xen Orchestra - Vates solutions

web: https://vates.tech
Re: [XEN PATCH v2 0/3] x86/iommu: Drop IOMMU support when cx16 isn't supported
Posted by Andrew Cooper 3 weeks ago
On 12/04/2024 9:31 am, Teddy Astie wrote:
> Le 11/04/2024 à 22:05, Andrew Cooper a écrit :
>> On 08/04/2024 2:02 pm, Teddy Astie wrote:
>>> All hardware that supports VT-d/AMD-Vi that exists also supports cx16 (aside
>>> specifically crafted virtual machines).
>>>
>>> Some IOMMU code paths in Xen consider cases where VT-d/AMD-Vi is supported
>>> while cx16 isn't, those paths may be bugged and are barely tested, dead code
>>> in practice.
>>>
>>> Disable IOMMU in case we have IOMMU hardware but no cx16, then cleanup
>>> no-cx16 handling logic from VT-d and AMD-Vi drivers.
>>>
>>> Teddy
>>>
>>> Changed in v2:
>>>
>>>   * Added cleanup no-cx16 code for x2APIC
>>>   * Fixed commit and code formatting
>>>   * Added missing Suggested-by note
>>>
>>> Teddy Astie (3):
>>>    VT-d: Disable IOMMU if cx16 isn't supported
>>>    AMD-Vi: Disable IOMMU if cx16 isn't supported
>>>    VT-d: Cleanup MAP_SINGLE_DEVICE and related code
>>>
>>>   xen/arch/x86/apic.c                         |  6 ++
>>>   xen/drivers/passthrough/amd/iommu_map.c     | 42 ++++------
>>>   xen/drivers/passthrough/amd/pci_amd_iommu.c |  6 ++
>>>   xen/drivers/passthrough/vtd/intremap.c      | 65 ++++-----------
>>>   xen/drivers/passthrough/vtd/iommu.c         | 92 +++++++--------------
>>>   xen/drivers/passthrough/vtd/vtd.h           |  5 +-
>>>   6 files changed, 71 insertions(+), 145 deletions(-)
>>>
>> Sorry, but you've sent out two copies of each patch in this series, and
>> it's not clear if they're identical or not.
>>
>> Please could you send out another version, making sure there's only one
>> of each patch.
>>
>> Also, you need to swap ENOSYS with ENODEV, as per Jan's review on v1.
>>
>> Thanks,
>>
>> ~Andrew
> Hello,
>
> Not entirely sure why it got sent twice, as marek said he only received 
> it once. Will double-check next time to avoid this issue in case I 
> wrongfully sent it twice.

Huh, lore agrees.  I seem to have both a direct and list copy which
weren't correctly deduplicated.

Sorry for the noise.

> Will also swap ENOSYS with ENODEV in the next version.

Thanks.

~Andrew

Re: [XEN PATCH v2 0/3] x86/iommu: Drop IOMMU support when cx16 isn't supported
Posted by Marek Marczykowski-Górecki 3 weeks, 1 day ago
On Thu, Apr 11, 2024 at 09:05:08PM +0100, Andrew Cooper wrote:
> Sorry, but you've sent out two copies of each patch in this series, and
> it's not clear if they're identical or not.

FWIW I've got just one copy. 

-- 
Best Regards,
Marek Marczykowski-Górecki
Invisible Things Lab