mbox series

[SRU,I,0/1] PCI: vmd: Do not disable MSI-X remapping if interrupt remapping is enabled by IOMMU

Message ID 20220216152929.2145997-1-jeffrey.lane@canonical.com
Headers show
Series PCI: vmd: Do not disable MSI-X remapping if interrupt remapping is enabled by IOMMU | expand

Message

Jeff Lane Feb. 16, 2022, 3:29 p.m. UTC
BugLink: https://bugs.launchpad.net/bugs/1937295

[Impact]

A hardware partner discovered they were unable to install Ubuntu on some
servers using VROC setups. They point to this issue involving DMAR that is
blocking discovery of the VROC RAID devices:

https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=2565e5b69c44b4e42469afea3cc5a97e74d1ed45

`git bisect` points to this offending commit ee81ee84f873 ("PCI:
vmd: Disable MSI-X remapping when possible"), which disables VMD MSI
remapping. The IOMMU hardware blocks the compatibility format
interrupt request because Interrupt Remapping Enable Status (IRES) and
Extended Interrupt Mode Enable (EIME) are enabled. Please refer to
section "5.1.4 Interrupt-Remapping Hardware Operation" in Intel VT-d
spec.

To fix the issue, VMD driver still enables the interrupt remapping
irrespective of VMD_FEAT_CAN_BYPASS_MSI_REMAP if the IOMMU subsystem
enables the interrupt remapping.

[Fix]

2565e5b69c44 PCI: vmd: Do not disable MSI-X remapping if interrupt remapping is
enabled by IOMMU

This is a simple patch that picks cleanly from 5.16

[Test Plan]

  1. Boot into VRoC controller in uEFI Setup and create a raid10 disk.
  2. Install affected Ubuntu release on the RAID10.
  3. The system hangs at "Partitions formatting 33%".

[Where problems could occur]

The fix itself is a very small change to drivers/pci/controller/vmd.c and 
problems should not occur. The root cause was discovered by the hardware 
partner's engineers, who tested and submitted it upstream where it was 
accepted and landed in 5.16.

That said, I doubt this will fix 18.04.6 as it would require a respin to get 
the patched kernel onto the ISO. 20.04 should pick it up in ISO in 20.04.5, 
so there could still be the initial issue since those ISOs would be lacking 
the patched kernel.

[Other Info]

As noted, this would need to not only land in the kernel but land in the kernel
in the ISO to resolve the issue in the installation process. I'll bring this 
back as far as Focal with the expectation that while 20.04.4 is too late, it 
will be present using the GA kernel in 20.04.5 later on.

Adrian Huang (1):
  PCI: vmd: Do not disable MSI-X remapping if interrupt remapping is
    enabled by IOMMU

 drivers/pci/controller/vmd.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

Comments

Tim Gardner Feb. 16, 2022, 4:04 p.m. UTC | #1
Acked-by: Tim Gardner <tim.gardner@canonical.com>

Seems like I just saw this patch.

On 2/16/22 8:29 AM, Jeff Lane wrote:
> BugLink: https://bugs.launchpad.net/bugs/1937295
> 
> [Impact]
> 
> A hardware partner discovered they were unable to install Ubuntu on some
> servers using VROC setups. They point to this issue involving DMAR that is
> blocking discovery of the VROC RAID devices:
> 
> https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=2565e5b69c44b4e42469afea3cc5a97e74d1ed45
> 
> `git bisect` points to this offending commit ee81ee84f873 ("PCI:
> vmd: Disable MSI-X remapping when possible"), which disables VMD MSI
> remapping. The IOMMU hardware blocks the compatibility format
> interrupt request because Interrupt Remapping Enable Status (IRES) and
> Extended Interrupt Mode Enable (EIME) are enabled. Please refer to
> section "5.1.4 Interrupt-Remapping Hardware Operation" in Intel VT-d
> spec.
> 
> To fix the issue, VMD driver still enables the interrupt remapping
> irrespective of VMD_FEAT_CAN_BYPASS_MSI_REMAP if the IOMMU subsystem
> enables the interrupt remapping.
> 
> [Fix]
> 
> 2565e5b69c44 PCI: vmd: Do not disable MSI-X remapping if interrupt remapping is
> enabled by IOMMU
> 
> This is a simple patch that picks cleanly from 5.16
> 
> [Test Plan]
> 
>    1. Boot into VRoC controller in uEFI Setup and create a raid10 disk.
>    2. Install affected Ubuntu release on the RAID10.
>    3. The system hangs at "Partitions formatting 33%".
> 
> [Where problems could occur]
> 
> The fix itself is a very small change to drivers/pci/controller/vmd.c and
> problems should not occur. The root cause was discovered by the hardware
> partner's engineers, who tested and submitted it upstream where it was
> accepted and landed in 5.16.
> 
> That said, I doubt this will fix 18.04.6 as it would require a respin to get
> the patched kernel onto the ISO. 20.04 should pick it up in ISO in 20.04.5,
> so there could still be the initial issue since those ISOs would be lacking
> the patched kernel.
> 
> [Other Info]
> 
> As noted, this would need to not only land in the kernel but land in the kernel
> in the ISO to resolve the issue in the installation process. I'll bring this
> back as far as Focal with the expectation that while 20.04.4 is too late, it
> will be present using the GA kernel in 20.04.5 later on.
> 
> Adrian Huang (1):
>    PCI: vmd: Do not disable MSI-X remapping if interrupt remapping is
>      enabled by IOMMU
> 
>   drivers/pci/controller/vmd.c | 4 +++-
>   1 file changed, 3 insertions(+), 1 deletion(-)
>
Krzysztof Kozlowski Feb. 17, 2022, 8:50 a.m. UTC | #2
On 16/02/2022 16:29, Jeff Lane wrote:
> BugLink: https://bugs.launchpad.net/bugs/1937295
> 
> [Impact]
> 
> A hardware partner discovered they were unable to install Ubuntu on some
> servers using VROC setups. They point to this issue involving DMAR that is
> blocking discovery of the VROC RAID devices:
> 
> https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=2565e5b69c44b4e42469afea3cc5a97e74d1ed45
> 
> `git bisect` points to this offending commit ee81ee84f873 ("PCI:
> vmd: Disable MSI-X remapping when possible"), which disables VMD MSI
> remapping. The IOMMU hardware blocks the compatibility format
> interrupt request because Interrupt Remapping Enable Status (IRES) and
> Extended Interrupt Mode Enable (EIME) are enabled. Please refer to
> section "5.1.4 Interrupt-Remapping Hardware Operation" in Intel VT-d
> spec.
> 
> To fix the issue, VMD driver still enables the interrupt remapping
> irrespective of VMD_FEAT_CAN_BYPASS_MSI_REMAP if the IOMMU subsystem
> enables the interrupt remapping.
> 
> [Fix]
> 
> 2565e5b69c44 PCI: vmd: Do not disable MSI-X remapping if interrupt remapping is
> enabled by IOMMU
> 
> This is a simple patch that picks cleanly from 5.16
> 
> [Test Plan]
> 
>   1. Boot into VRoC controller in uEFI Setup and create a raid10 disk.
>   2. Install affected Ubuntu release on the RAID10.
>   3. The system hangs at "Partitions formatting 33%".
> 
> [Where problems could occur]
> 
> The fix itself is a very small change to drivers/pci/controller/vmd.c and 
> problems should not occur. The root cause was discovered by the hardware 
> partner's engineers, who tested and submitted it upstream where it was 
> accepted and landed in 5.16.
> 
> That said, I doubt this will fix 18.04.6 as it would require a respin to get 
> the patched kernel onto the ISO. 20.04 should pick it up in ISO in 20.04.5, 
> so there could still be the initial issue since those ISOs would be lacking 
> the patched kernel.
> 

You could send just one patch with title [SRU][I][J]

Acked-by: Krzysztof Kozlowski <krzysztof.kozlowski@canonical.com>


Best regards,
Krzysztof
Kleber Sacilotto de Souza Feb. 17, 2022, 12:50 p.m. UTC | #3
On 16.02.22 16:29, Jeff Lane wrote:
> BugLink: https://bugs.launchpad.net/bugs/1937295
> 
> [Impact]
> 
> A hardware partner discovered they were unable to install Ubuntu on some
> servers using VROC setups. They point to this issue involving DMAR that is
> blocking discovery of the VROC RAID devices:
> 
> https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=2565e5b69c44b4e42469afea3cc5a97e74d1ed45
> 
> `git bisect` points to this offending commit ee81ee84f873 ("PCI:
> vmd: Disable MSI-X remapping when possible"), which disables VMD MSI
> remapping. The IOMMU hardware blocks the compatibility format
> interrupt request because Interrupt Remapping Enable Status (IRES) and
> Extended Interrupt Mode Enable (EIME) are enabled. Please refer to
> section "5.1.4 Interrupt-Remapping Hardware Operation" in Intel VT-d
> spec.
> 
> To fix the issue, VMD driver still enables the interrupt remapping
> irrespective of VMD_FEAT_CAN_BYPASS_MSI_REMAP if the IOMMU subsystem
> enables the interrupt remapping.
> 
> [Fix]
> 
> 2565e5b69c44 PCI: vmd: Do not disable MSI-X remapping if interrupt remapping is
> enabled by IOMMU
> 
> This is a simple patch that picks cleanly from 5.16
> 
> [Test Plan]
> 
>    1. Boot into VRoC controller in uEFI Setup and create a raid10 disk.
>    2. Install affected Ubuntu release on the RAID10.
>    3. The system hangs at "Partitions formatting 33%".
> 
> [Where problems could occur]
> 
> The fix itself is a very small change to drivers/pci/controller/vmd.c and
> problems should not occur. The root cause was discovered by the hardware
> partner's engineers, who tested and submitted it upstream where it was
> accepted and landed in 5.16.
> 
> That said, I doubt this will fix 18.04.6 as it would require a respin to get
> the patched kernel onto the ISO. 20.04 should pick it up in ISO in 20.04.5,
> so there could still be the initial issue since those ISOs would be lacking
> the patched kernel.
> 
> [Other Info]
> 
> As noted, this would need to not only land in the kernel but land in the kernel
> in the ISO to resolve the issue in the installation process. I'll bring this
> back as far as Focal with the expectation that while 20.04.4 is too late, it
> will be present using the GA kernel in 20.04.5 later on.
> 
> Adrian Huang (1):
>    PCI: vmd: Do not disable MSI-X remapping if interrupt remapping is
>      enabled by IOMMU
> 
>   drivers/pci/controller/vmd.c | 4 +++-
>   1 file changed, 3 insertions(+), 1 deletion(-)
> 

Applied to impish:linux.

Thanks,
Kleber