Public bug reported:
It's been observed that plugging in a TBT3 NVME device to a port marked
with ExternalFacingPort that some DMA transactions occur that are not a
full page and so the DMA API attempts to use software bounce buffers
instead of relying upon the IOMMU translation.
This doesn't work and leads to messaging like:
swiotlb buffer is full (sz: 4096 bytes), total 0 (slots), used 0 (slots)
The bounce buffers were originally set up, but torn down during
the boot process.
* This happens because as part of IOMMU initialization
`amd_iommu_init_dma_ops` gets called and resets the global swiotlb to 0.
* When late_init gets called `pci_swiotlb_late_init` `swiotlb_exit` is
called and the buffers are torn down.
This can be observed in the logs:
```
[ 0.407286] AMD-Vi: Extended features (0x246577efa2254afa): PPR NX GT [5] IA
GA PC GA_vAPIC
[ 0.407291] AMD-Vi: Interrupt remapping enabled
[ 0.407292] AMD-Vi: Virtual APIC enabled
[ 0.407872] software IO TLB: tearing down default memory pool
```
This series fixes the behavior of AMD IOMMU to enable swiotlb so that
non-page aligned DMA goes through a bounce buffer.
It also adds a message to help with debugging similar problems in the
future.
** Affects: hwe-next
Importance: Undecided
Status: New
** Affects: linux (Ubuntu)
Importance: Undecided
Status: New
** Affects: linux-oem-5.14 (Ubuntu)
Importance: Undecided
Status: Invalid
** Affects: linux-oem-5.17 (Ubuntu)
Importance: Undecided
Status: New
** Affects: linux (Ubuntu Focal)
Importance: Undecided
Status: Invalid
** Affects: linux-oem-5.14 (Ubuntu Focal)
Importance: Undecided
Status: New
** Affects: linux-oem-5.17 (Ubuntu Focal)
Importance: Undecided
Status: Invalid
** Affects: linux (Ubuntu Impish)
Importance: Undecided
Status: New
** Affects: linux-oem-5.14 (Ubuntu Impish)
Importance: Undecided
Status: Invalid
** Affects: linux-oem-5.17 (Ubuntu Impish)
Importance: Undecided
Status: Invalid
** Affects: linux (Ubuntu Jammy)
Importance: Undecided
Status: New
** Affects: linux-oem-5.14 (Ubuntu Jammy)
Importance: Undecided
Status: Invalid
** Affects: linux-oem-5.17 (Ubuntu Jammy)
Importance: Undecided
Status: New
** Tags: amd oem-priority originate-from-1968137
** Tags added: amd oem-priority originate-from-1968137
** Also affects: linux-oem-5.17 (Ubuntu)
Importance: Undecided
Status: New
** Also affects: linux-oem-5.14 (Ubuntu)
Importance: Undecided
Status: New
** Also affects: linux (Ubuntu Focal)
Importance: Undecided
Status: New
** Also affects: linux-oem-5.14 (Ubuntu Focal)
Importance: Undecided
Status: New
** Also affects: linux-oem-5.17 (Ubuntu Focal)
Importance: Undecided
Status: New
** Also affects: linux (Ubuntu Jammy)
Importance: Undecided
Status: New
** Also affects: linux-oem-5.14 (Ubuntu Jammy)
Importance: Undecided
Status: New
** Also affects: linux-oem-5.17 (Ubuntu Jammy)
Importance: Undecided
Status: New
** Changed in: linux (Ubuntu Focal)
Status: New => Invalid
** Changed in: linux-oem-5.14 (Ubuntu Jammy)
Status: New => Invalid
** Changed in: linux-oem-5.17 (Ubuntu Focal)
Status: New => Invalid
** Also affects: linux (Ubuntu Impish)
Importance: Undecided
Status: New
** Also affects: linux-oem-5.14 (Ubuntu Impish)
Importance: Undecided
Status: New
** Also affects: linux-oem-5.17 (Ubuntu Impish)
Importance: Undecided
Status: New
** Changed in: linux-oem-5.14 (Ubuntu Impish)
Status: New => Invalid
** Changed in: linux-oem-5.17 (Ubuntu Impish)
Status: New => Invalid
--
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/1969086
Title:
Enable swiotlb to avoid untrusted devices errors on AMD platforms
To manage notifications about this bug go to:
https://bugs.launchpad.net/hwe-next/+bug/1969086/+subscriptions
--
ubuntu-bugs mailing list
[email protected]
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs