[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <3be03057-2a83-46e5-b120-bb041208c694@oracle.com>
Date: Tue, 2 Dec 2025 19:19:47 +0530
From: ALOK TIWARI <alok.a.tiwari@...cle.com>
To: "Maciej W. Rozycki" <macro@...am.me.uk>,
Bjorn Helgaas <bhelgaas@...gle.com>,
Matthew W Carlis <mattc@...estorage.com>
Cc: ashishk@...estorage.com, bamstadt@...estorage.com, msaggi@...estorage.com,
sconnor@...estorage.com, Lukas Wunner <lukas@...ner.de>,
Ilpo Järvinen
<ilpo.jarvinen@...ux.intel.com>,
Jiwei <jiwei.sun.bj@...com>, guojinhui.liam@...edance.com,
ahuang12@...ovo.com, sunjw10@...ovo.com, linux-pci@...r.kernel.org,
linux-kernel@...r.kernel.org
Subject: Re: [External] : [PATCH] PCI: Always lift 2.5GT/s restriction in PCIe
failed link retraining
On 12/1/2025 9:22 AM, Maciej W. Rozycki wrote:
> Discard Vendor:Device ID matching in the PCIe failed link retraining
> quirk and ignore the link status for the removal of the 2.5GT/s speed
> clamp, whether applied by the quirk itself or the firmware earlier on.
> Revert to the original target link speed if this final link retraining
> has failed.
>
> This is so that link training noise in hot-plug scenarios does not make
> a link remain clamped to the 2.5GT/s speed where an event race has led
> the quirk to apply the speed clamp for one device, only to leave it in
> place for a subsequent device to be plugged in.
>
> Fixes: a89c82249c37 ("PCI: Work around PCIe link training failures")
> Signed-off-by: Maciej W. Rozycki<macro@...am.me.uk>
> Cc:<stable@...r.kernel.org> # v6.5+
> ---
> drivers/pci/quirks.c | 50 ++++++++++++++++++--------------------------------
> 1 file changed, 18 insertions(+), 32 deletions(-)
>
> linux-pcie-failed-link-retrain-unclamp-always.diff
> Index: linux-macro/drivers/pci/quirks.c
> ===================================================================
> --- linux-macro.orig/drivers/pci/quirks.c
> +++ linux-macro/drivers/pci/quirks.c
Thanks a lot for your patch.
The patch works, and the issue has been resolved in our testing.
However, this patch does not cleanly apply to the 6.12 LTS kernel.
To apply the fix cleanly, a series of patches is required.
PCI: Always lift 2.5GT/s restriction in PCIe failed link retraining
2389d8dc38fee PCI/bwctrl: Replace lbms_count with PCI_LINK_LBMS_SEEN flag
15b8968dcb90f PCI/bwctrl: Fix NULL pointer deref on unbind and bind
e3f30d563a388 PCI: Make pci_destroy_dev() concurrent safe
667f053b05f00 PCI/bwctrl: Fix NULL pointer dereference on bus number
exhaustion
e93d9fcfd7dc6 PCI: Refactor pcie_update_link_speed()
9989e0ca7462c PCI: Fix link speed calculation on retrain failure
b85af48de3ece PCI: Adjust the position of reading the Link Control 2
register
026e4bffb0af9 PCI/bwctrl: Fix pcie_bwctrl_select_speed() return type
d278b098282d1 thermal: Add PCIe cooling driver
de9a6c8d5dbfe PCI/bwctrl: Add pcie_set_target_speed() to set PCIe Link Speed
665745f274870 PCI/bwctrl: Re-add BW notification portdrv as PCIe BW
controller
3491f50966686 PCI: Abstract LBMS seen check into pcie_lbms_seen()
Could you please provide a version of this patch that can be
cleanly cherry-picked for the 6.12 LTS (6.12.y) branch?
Alternatively, is it okay to back-port the above patch series to 6.12.y?
Tested-by: Alok Tiwari <alok.a.tiwari@...cle.com>
Thanks,
Alok
Powered by blists - more mailing lists