mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: blaat windows <blaaaat@hotmail.com>
To: "linux-pci@vger.kernel.org" <linux-pci@vger.kernel.org>
Cc: "linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
	"regressions@lists.linux.dev" <regressions@lists.linux.dev>
Subject: Re: [PATCH v3] PCI: Skip Target Speed quirk on clamped ports with no link
Date: Sun, 20 Sep 2026 08:15:05 +0000	[thread overview]
Message-ID: <AS2PR10MB7429335B6C8F4C7FA3F88638B5852@AS2PR10MB7429.EURPRD10.PROD.OUTLOOK.COM> (raw)

Another reproducible case of the active-link failure described in this thread.

Hardware:
Intel 4th-gen/9-series platform
Intel 82571EB quad-port NIC
Microsemi/PMC/IDT PES12N3A PCIe switch
Root port 00:1c.4, LnkCap 5GT/s x4
Working negotiated link: 2.5GT/s x4

Kernel results:
7.2-rc1 fail
7.1-rc7 succes

On failing kernels, the PES12N3A hierarchy does not enumerate and all four downstream 82571EB ports disappear.

I traced this to pcie_failed_link_retrain() and specifically the new generic clamp-removal code introduced by 72780f7964684939d7d2f69c348876213b184484 ("PCI: Always lift 2.5GT/s restriction in PCIe failed link retraining").

I tested 7.3.0-rc3+ with only this block commented out:

    pcie_capability_read_word(dev, PCI_EXP_LNKCTL2, &lnkctl2);
    if ((lnkctl2 & PCI_EXP_LNKCTL2_TLS) == PCI_EXP_LNKCTL2_TLS_2_5GT) {
            pci_info(dev, "removing 2.5GT/s downstream link speed restriction\n");
            ret = pcie_set_target_speed(dev, speed_cap, false);
            if (ret)
                    goto err;
    }

With that block disabled, 7.3.0-rc3+ boots normally, having all four NIC ports enumerate:

07:00.0 82571EB
07:00.1 82571EB
08:00.0 82571EB
08:00.1 82571EB

The important result is that the initial 2.5GT/s recovery is fine. Leaving the link at 2.5GT/s works. It is the subsequent:

    pcie_set_target_speed(dev, speed_cap, false);

which breaks this PES12N3A/82571EB link.

So this appears to be the same active-link failure mode, but with a PES12N3A switch rather than a direct 82571EB connection.

This was tested against vanilla 7.3.0-rc3+ with only the above local change.

I can provide full dmesg/lspci output and test a proposed fix if useful.

             reply	other threads:[~2026-09-20  8:15 UTC|newest]

Thread overview: 21+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-09-20  8:15 blaat windows [this message]
  -- strict thread matches above, loose matches on Subject: below --
2026-08-01 20:11 Andreas Wild
2026-08-03  5:39 ` Thorsten Leemhuis
2026-08-03 22:07   ` Maciej W. Rozycki
2026-08-04  5:32     ` Thorsten Leemhuis
2026-08-07 19:59 ` Aoxtj
2026-08-08  6:31   ` Andreas Wild
2026-08-11  3:43     ` Aoxtj
2026-08-11  6:42       ` Andreas Wild
2026-08-24 14:26         ` Thorsten Leemhuis
2026-08-25  7:05           ` Andreas Wild
2026-08-25 10:18             ` Maciej W. Rozycki
2026-09-02 15:48               ` Thorsten Leemhuis
2026-09-07 12:33                 ` Maciej W. Rozycki
2026-09-17 23:33 ` Bjorn Helgaas
2026-09-18  5:39   ` Thorsten Leemhuis
2026-09-18 10:39     ` Maciej W. Rozycki
2026-09-18 11:00       ` Thorsten Leemhuis
2026-09-18 12:18         ` Maciej W. Rozycki
2026-09-18 12:50           ` Thorsten Leemhuis
2026-09-21 10:33       ` Thorsten Leemhuis

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=AS2PR10MB7429335B6C8F4C7FA3F88638B5852@AS2PR10MB7429.EURPRD10.PROD.OUTLOOK.COM \
    --to=blaaaat@hotmail.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-pci@vger.kernel.org \
    --cc=regressions@lists.linux.dev \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®