]> www.infradead.org Git - users/jedix/linux-maple.git/commit
PCI/MSI: Provide a sane mechanism for TPH
authorThomas Gleixner <tglx@linutronix.de>
Thu, 13 Mar 2025 13:03:48 +0000 (14:03 +0100)
committerThomas Gleixner <tglx@linutronix.de>
Thu, 13 Mar 2025 17:58:00 +0000 (18:58 +0100)
commitb9db8df4333b895cd5c0b9f99234ac1cebd31bf7
tree73507acbe1fc8a806ca2dc4cde50a7d36c63b17a
parent50410bad27146d03dcccbc337088550399e687c7
PCI/MSI: Provide a sane mechanism for TPH

The PCI/TPH driver fiddles with the MSI-X control word of an active
interrupt completely unserialized against concurrent operations issued
from the interrupt core. It also brings the PCI/MSI-X internal cached
control word out of sync.

Provide a function, which has the required serialization and keeps the
control word cache in sync.

Unfortunately this requires to look up and lock the interrupt descriptor,
which should be only done in the interrupt core code. But confining this
particular oddity in the PCI/MSI core is the lesser of all evil. A
interrupt core implementation would require a larger pile of infrastructure
and indirections for dubious value.

Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Acked-by: Bjorn Helgaas <bhelgaas@google.com>
Link: https://lore.kernel.org/all/20250313130321.822790423@linutronix.de
drivers/pci/msi/msi.c
drivers/pci/pci.h