On Fri, Sep 03, 2021 at 03:40:29AM +0000, Nathan Rossi wrote: > The Pericom PI7C9X2G404 PCIe switch has an errata for ACS P2P Request > Redirect behaviour when used in the cut-through forwarding mode. The > recommended work around for this issue is to use the switch in store and > forward mode. > > This change adds a fixup specific to this switch that when enabling the > downstream port it checks if it has enabled ACS P2P Request Redirect, > and if so changes the device (via the upstream port) to use the store > and forward operating mode. >From a quick look at the datasheet, this switch seems to support hot-plug on its Downstream Ports: https://www.diodes.com/assets/Datasheets/PI7C9X2G404SL.pdf I think your quirk isn't executed if a device is hotplugged to an initially-empty Downstream Port. Also, if a device which triggered the quirk is hot-removed and none of its siblings uses ACS P2P Request Redirect, cut-through forwarding isn't reinstated. Perhaps we need additional pci_fixup ELF sections which are used on hot-add and hot-remove? Thanks, Lukas