[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20181129191312.6ksdzjv6qojacv4j@wunner.de>
Date: Thu, 29 Nov 2018 20:13:12 +0100
From: Lukas Wunner <lukas@...ner.de>
To: Alex_Gagniuc@...lteam.com
Cc: helgaas@...nel.org, mr.nuke.me@...il.com, Austin.Bolen@...l.com,
keith.busch@...el.com, Shyam.Iyer@...l.com,
mika.westerberg@...ux.intel.com, okaya@...eaurora.org,
rafael.j.wysocki@...el.com, poza@...eaurora.org,
linux-pci@...r.kernel.org, linux-kernel@...r.kernel.org
Subject: Re: [PATCH] PCI: pciehp: Report degraded links via link bandwidth
notification
On Thu, Nov 29, 2018 at 06:57:37PM +0000, Alex_Gagniuc@...lteam.com wrote:
> On 11/29/2018 11:36 AM, Bjorn Helgaas wrote:
> > On Wed, Nov 28, 2018 at 06:08:24PM -0600, Alexandru Gagniuc wrote:
> >> A warning is generated when a PCIe device is probed with a degraded
> >> link, but there was no similar mechanism to warn when the link becomes
> >> degraded after probing. The Link Bandwidth Notification provides this
> >> mechanism.
> >>
> >> Use the link bandwidth notification interrupt to detect bandwidth
> >> changes, and rescan the bandwidth, looking for the weakest point. This
> >> is the same logic used in probe().
> >
> > I like the concept of this. What I don't like is the fact that it's
> > tied to pciehp, since I don't think the concept of Link Bandwidth
> > Notification is related to hotplug. So I think we'll only notice this
> > for ports that support hotplug. Maybe it's worth doing it this way
> > anyway, even if it could be generalized in the future?
>
> That makes sense. At first, I thought that BW notification was tied to
> hotplug, but our PCIe spec writer disagreed with that assertion. I'm
> just not sure where to handle the interrupt otherwise.
I guess the interrupt is shared with hotplug and PME? In that case write
a separate pcie_port_service_driver and request the interrupt with
IRQF_SHARED. Define a new service type in drivers/pci/pcie/portdrv.h.
Amend get_port_device_capability() to check for PCI_EXP_LNKCAP_LBNC.
Thanks,
Lukas
Powered by blists - more mailing lists