All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 0/3] altra workarounds for PCIE_64 with instrumentation
@ 2024-08-27 13:08 Alex Bennée
  2024-08-27 13:08 ` [PATCH 1/3] ampere/arm64: Add a fixup handler for alignment faults in aarch64 code Alex Bennée
                   ` (2 more replies)
  0 siblings, 3 replies; 8+ messages in thread
From: Alex Bennée @ 2024-08-27 13:08 UTC (permalink / raw)
  To: linux-kernel; +Cc: kvm, linux-arm-kernel, kvmarm, maz, arnd, Alex Bennée

While testing virtio-vulkan on the AVA platform we needed to include
some fixups for its PCI handling. As far as I know these have only
been included in various downstream kernel repos:

  https://community.amperecomputing.com/t/gpu-support-for-ampere-altra/274

The initial two patches are as we found them save for a fix to
align_ldst_regoff_simdfp in the alignment handler. The third and new
patch is trace point instrumentation so we could see how often the
workaround is being invoked.

Combined with Sean's PFN patches:

  https://lore.kernel.org/all/20240726235234.228822-1-seanjc@google.com/

And the Vulkan/Venus support for QEMU:

  https://patchew.org/QEMU/20240822185110.1757429-1-dmitry.osipenko@collabora.com/

I was able to test virtio-vulkan running in a Aarch64 KVM guest hosted
on my AVA platform with an AMD Radeon graphics card plugged into the
PCI bus.

I don't know if there is any interest in getting these upstream but I
figured it was worth posting to the lists for wider visibility and
discussion. For now I'll just carry these patches locally on my AVA
until I get a better system for PCI GPU experiments.

Thanks,

Alex.

Alex Bennée (1):
  ampere/arm64: instrument the altra workarounds

D Scott Phillips (2):
  ampere/arm64: Add a fixup handler for alignment faults in aarch64 code
  ampere/arm64: Work around Ampere Altra erratum #82288 PCIE_65

 arch/arm64/Kconfig                 |  22 +-
 arch/arm64/include/asm/insn.h      |   1 +
 arch/arm64/include/asm/io.h        |   3 +
 arch/arm64/include/asm/pgtable.h   |  29 +-
 arch/arm64/mm/Makefile             |   3 +-
 arch/arm64/mm/fault.c              | 726 +++++++++++++++++++++++++++++
 arch/arm64/mm/fault_neon.c         |  59 +++
 arch/arm64/mm/ioremap.c            |  38 ++
 drivers/pci/quirks.c               |   9 +
 include/asm-generic/io.h           |   4 +
 include/trace/events/altra_fixup.h |  57 +++
 mm/ioremap.c                       |   2 +-
 12 files changed, 945 insertions(+), 8 deletions(-)
 create mode 100644 arch/arm64/mm/fault_neon.c
 create mode 100644 include/trace/events/altra_fixup.h

-- 
2.39.2


^ permalink raw reply	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2024-08-30  1:43 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-08-27 13:08 [PATCH 0/3] altra workarounds for PCIE_64 with instrumentation Alex Bennée
2024-08-27 13:08 ` [PATCH 1/3] ampere/arm64: Add a fixup handler for alignment faults in aarch64 code Alex Bennée
2024-08-27 21:23   ` D Scott Phillips
2024-08-28  8:29     ` Marc Zyngier
2024-08-28  9:47     ` Alex Bennée
2024-08-30  1:43   ` kernel test robot
2024-08-27 13:08 ` [PATCH 2/3] ampere/arm64: Work around Ampere Altra erratum #82288 PCIE_65 Alex Bennée
2024-08-27 13:08 ` [PATCH 3/3] ampere/arm64: instrument the altra workarounds Alex Bennée

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.