ACK: [SRU][R][PATCH 0/3] Fix for storage corruption on 64 bit DMA on AMD platforms

Rickey Castillo Valenzuela rickey.castillo.valenzuela at canonical.com
Fri Oct 2 17:25:06 UTC 2026


On 9/29/26 00:34, Yo-Jung Leo Lin (AMD) via kernel-team wrote:
> BugLink:https://bugs.launchpad.net/bugs/2166838
>
> [ Impact ]
>
> We found a issue where if our BIOS enables certain enhanced features for PCIe atomics for PCI root port on a system where some devices don't support, it leads to malfunction on some of those devices.
>
> Currently this manifests as storage corruption on PCIe-connected SATA storage, but potentially can lead to more general PCIe device issues.
>
> [ Fix ]
>
> Cherry-pick a quirk for AMD platforms from this patcheset:
>
> - Fix for storage corruption w/ AMD IOMMU on 64-bit addressing[1]
>
> They can be found in following commits:
>
> 1. 4fde4482 (mainline) x86/PCI: Disable enhanced atomics on AMD NBIO 7.7 and 7.11
> 2. 6b28e0e7 (linux-next) Revert "ata: ahci: force 32-bit DMA for JMicron JMB582/JMB585"
>
> And a dependent patch to make these 2 apply cleanly:
>
> 1. 21e7b971 (mainline) ata: Use named initializers for pci_device_id arrays
>
> This dependent patch simply cosmetic (e.g. replace struct initialization with designated initializer) and functionally should make no difference before and after.
>
> [ Test plan ]
>
> Install the kernel with the said fix, and run workload on the PCIe storage to deplete 32bit DMA address for the given storage. When the PCIe The storage start using 64 bit DMA address, content of that storage shouldn't be corrupted.
>
> [ Where problems could occur ]
>
> The quirk is AMD-specific. This disables certain enhancement feature on PHX/HPT/STX/KRK/STXH platforms. Normal PCIe AtomicOp should not get impacted.
>
> Although this is more of a BIOS issue, it's unlikely to get BIOS update for all those platforms in the field. So adding a quirk in kernel would help mitigate that.
>
> [ Additional Information ]
>
> [1]https://lore.kernel.org/linux-ide/20260908190600.226485-1-mario.limonciello@amd.com/
>
> Mario Limonciello (2):
>    x86/PCI: Disable enhanced atomics on AMD NBIO 7.7 and 7.11
>    Revert "ata: ahci: force 32-bit DMA for JMicron JMB582/JMB585"
>
> Uwe Kleine-König (The Capable Hub) (1):
>    ata: Use named initializers for pci_device_id arrays
>
>   arch/x86/pci/fixup.c            |   99 ++
>   drivers/ata/acard-ahci.c        |    8 +-
>   drivers/ata/ahci.c              | 1634 ++++++++++++++++++++++++-------
>   drivers/ata/ata_piix.c          |  532 ++++++----
>   drivers/ata/pata_acpi.c         |    5 +-
>   drivers/ata/pata_amd.c          |   88 +-
>   drivers/ata/pata_artop.c        |   11 +-
>   drivers/ata/pata_cmd64x.c       |   11 +-
>   drivers/ata/pata_opti.c         |    7 +-
>   drivers/ata/pata_pdc2027x.c     |   30 +-
>   drivers/ata/pata_pdc202xx_old.c |   13 +-
>   drivers/ata/pata_serverworks.c  |   24 +-
>   drivers/ata/pata_sis.c          |    1 -
>   drivers/ata/pata_via.c          |   19 +-
>   drivers/ata/pdc_adma.c          |    3 +-
>   drivers/ata/sata_mv.c           |   34 +-
>   drivers/ata/sata_nv.c           |   58 +-
>   drivers/ata/sata_promise.c      |   38 +-
>   drivers/ata/sata_qstor.c        |    3 +-
>   drivers/ata/sata_sil.c          |   15 +-
>   drivers/ata/sata_sil24.c        |   15 +-
>   drivers/ata/sata_sis.c          |   32 +-
>   drivers/ata/sata_svw.c          |   15 +-
>   drivers/ata/sata_sx4.c          |    3 +-
>   drivers/ata/sata_uli.c          |    7 +-
>   drivers/ata/sata_via.c          |   38 +-
>   26 files changed, 2028 insertions(+), 715 deletions(-)
Acked-by: Rickey Castillo <rickey.castillo.valenzuela at canonical.com>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.ubuntu.com/archives/kernel-team/attachments/20261002/918d33f0/attachment.html>


More information about the kernel-team mailing list