On Fri, Aug 09, 2024 at 02:24:40PM +0100, Maciej W. Rozycki wrote: > Hi, > > This is v2 superseding a patch series originally posted here: > <https://lore.kernel.org/r/alpine.DEB.2.21.2402092125070.2376@xxxxxxxxxxxxxxxxx/>. > > This patch series addresses issues observed by Ilpo as reported here: > <https://lore.kernel.org/r/aa2d1c4e-9961-d54a-00c7-ddf8e858a9b0@xxxxxxxxxxxxxxx/>, > one with excessive delays happening when `pcie_failed_link_retrain' is > called, but link retraining has not been actually attempted, and another > one with an API misuse caused by a merge mistake. > > It also addresses an issue observed by Matthew as discussed here: > <https://lore.kernel.org/r/20240806000659.30859-1-mattc@xxxxxxxxxxxxxxx/> > and here: > <https://lore.kernel.org/r/20240722193407.23255-1-mattc@xxxxxxxxxxxxxxx/>. > where a stale LBMS bit state causes `pcie_failed_link_retrain', in the > absence of a downstream device, to leave the link stuck at the 2.5GT/s > speed rate, which then negatively impacts devices plugged in in the > future. > > See individual change description for further details; 1/4 and 2/4 are > new changes, 3/4 supersedes: > <https://patchwork.kernel.org/project/linux-pci/patch/alpine.DEB.2.21.2402100045590.2376@xxxxxxxxxxxxxxxxx/>, > and 4/4 supersedes: > <https://patchwork.kernel.org/project/linux-pci/patch/alpine.DEB.2.21.2402100048440.2376@xxxxxxxxxxxxxxxxx/>. > > These changes have been verified with a SiFive HiFive Unmatched system, > also using a small debug change to verify that the state of the LBMS bit > is clear at the exit from `pcie_failed_link_retrain'. > > Ilpo, since 3/4 and 4/4 have only been trivially updated and their > combined effect is not changed even I chose to retain your Reviewed-by > tags from v1. Let me know if you disagree and what to do so you don't. > > I apologise to take so long, it's been a tough period to me load-wise. Applied to pci/enumeration for v6.12, thanks for all this debugging and work. Matthew, let me know if this addresses the problems you saw, and I can add your tested-by if appropriate. Bjorn