https://bugzilla.kernel.org/show_bug.cgi?id=219629

--- Comment #6 from Evert Vorster (evors...@gmail.com) ---
It turns out that I had a little more time on my hands. 
Here is the output of the kernel bisect:
[code]
[evert@Evert linux-mainline]$ git bisect good
665745f274870c921020f610e2c99a3b1613519b is the first bad commit
commit 665745f274870c921020f610e2c99a3b1613519b
Author: Ilpo Järvinen <ilpo.jarvi...@linux.intel.com>
Date:   Fri Oct 18 17:47:52 2024 +0300

    PCI/bwctrl: Re-add BW notification portdrv as PCIe BW controller

    This mostly reverts the commit b4c7d2076b4e ("PCI/LINK: Remove bandwidth
    notification"). An upcoming commit extends this driver building PCIe
    bandwidth controller on top of it.

    PCIe bandwidth notifications were first added in the commit e8303bb7a75c
    ("PCI/LINK: Report degraded links via link bandwidth notification") but
    later had to be removed. The significant changes compared with the old
    bandwidth notification driver include:

    1) Don't print the notifications into kernel log, just keep the Link
       Speed cached in struct pci_bus updated. While somewhat unfortunate,
       the log spam was the source of complaints that eventually lead to
       the removal of the bandwidth notifications driver (see the links
       below for further information).

    2) Besides the Link Bandwidth Management Interrupt, also enable Link
       Autonomous Bandwidth Interrupt to cover the other source of bandwidth
       changes.

    3) Handle Link Speed updates robustly. Refresh the cached Link Speed
       when enabling Bandwidth Notification Interrupts, and solve the race
       between Link Speed read and LBMS/LABS update in
       pcie_bwnotif_irq_thread().

    4) Use concurrency safe LNKCTL RMW operations.

    5) The driver is now called PCIe bwctrl (bandwidth controller) instead
       of just bandwidth notifications because of increased scope and
       functionality within the driver.

    6) Coexist with the Target Link Speed quirk in pcie_failed_link_retrain().
       Provide LBMS counting API for it.

    7) Tweaks to variable/functions names for consistency and length reasons.

    Bandwidth Notifications enable the cur_bus_speed in the struct pci_bus to
    keep track PCIe Link Speed changes.

    [bhelgaas: This is based on previous work by Alexandru Gagniuc
    <mr.nuke...@gmail.com>; see e8303bb7a75c ("PCI/LINK: Report degraded links
    via link bandwidth notification")]

    Link:
https://lore.kernel.org/r/20241018144755.7875-7-ilpo.jarvi...@linux.intel.com
    Link:
https://lore.kernel.org/all/20190429185611.121751-1-helg...@kernel.org/
    Link:
https://lore.kernel.org/linux-pci/20190501142942.26972-1-keith.bu...@intel.com/
    Link: https://lore.kernel.org/linux-pci/20200115221008.ga191...@google.com/
    Suggested-by: Lukas Wunner <lu...@wunner.de> # Building bwctrl on top of
bwnotif
    Signed-off-by: Ilpo Järvinen <ilpo.jarvi...@linux.intel.com>
    [bhelgaas: squash fix to drop IRQF_ONESHOT and convert to hardirq handler:
   
https://lore.kernel.org/r/20241115165717.15233-1-ilpo.jarvi...@linux.intel.com]
    Signed-off-by: Bjorn Helgaas <bhelg...@google.com>
    Tested-by: Stefan Wahren <wahre...@gmx.net>
    Reviewed-by: Jonathan Cameron <jonathan.came...@huawei.com>

 MAINTAINERS                       |   6 ++++
 drivers/pci/hotplug/pciehp_ctrl.c |   5 ++++
 drivers/pci/pci.c                 |   2 +-
 drivers/pci/pci.h                 |  11 +++++++
 drivers/pci/pcie/Makefile         |   2 +-
 drivers/pci/pcie/bwctrl.c         | 186
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 drivers/pci/pcie/portdrv.c        |   9 +++---
 drivers/pci/pcie/portdrv.h        |   6 ++--
 drivers/pci/quirks.c              |   9 +++++-
 include/linux/pci.h               |   2 ++
 10 files changed, 229 insertions(+), 9 deletions(-)
 create mode 100644 drivers/pci/pcie/bwctrl.c
[evert@Evert linux-mainline]$
[/code]

-- 
You may reply to this email to add a comment.

You are receiving this mail because:
You are watching the assignee of the bug.

_______________________________________________
acpi-bugzilla mailing list
acpi-bugzilla@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/acpi-bugzilla

Reply via email to