On Sun, Feb 11, 2018 at 10:25:25AM +0100, Lukas Wunner wrote:
> On Sat, Feb 10, 2018 at 08:48:15PM -0600, Bjorn Helgaas wrote:
> > 7570a333d8b0 ("PCI: Add pcie_hp=nomsi to disable MSI/MSI-X for pciehp
> > driver") added the "pcie_hp=nomsi" kernel parameter to work around this
> > error on shutdown:
> > 
> >   irq 16: nobody cared (try booting with the "irqpoll" option)
> >   Pid: 1081, comm: reboot Not tainted 3.2.0 #1
> >   ...
> >   Disabling IRQ #16
> > 
> > This happened on an unspecified system (possibly involving the Integrated
> > Device Technology, Inc. Device 807f bridge).  There is no automated way to
> > set this parameter, so it's not very useful for distributions or end users.
> > 
> > I suspect the root cause of the underlying "irq 16: nobody cared" issue was
> > fixed by Prarit Bhargava <pra...@redhat.com> with fda78d7a0ead ("PCI/MSI:
> > Stop disabling MSI/MSI-X in pci_device_shutdown()") and we probably don't
> > need "pcie_hp=nomsi" any more.
> > 
> > Revert 7570a333d8b0 to remove the "pcie_hp=nomsi" parameter.
> 
> This has been useful when bringing up broken hardware which claims to
> support MSI but really doesn't, such as in commit 19bf4d4f909d
> ("thunderbolt: Support 1st gen Light Ridge controller").  In this case
> I didn't know why the controller wasn't sending interrupts, on a hunch
> I tried "pcie_hp=nomsi" and that worked, and looking in the macOS source
> code I was able to verify that they disable MSI for this particular
> hardware as well.  So please leave it in to ease developers' lives.

Wouldn't "pci=nomsi" be sufficient for that sort of bringup
experimentation?  We don't need to be super specific in that
situation.

The reason I want to remove it is that the port driver
(drivers/pci/pcie/portdrv*) has become a rat's nest of switches and
special cases, and I'm trying to simplify it.  Things like
"pcie_hp=nomsi" are trivial individually, but collectively it's
getting unmanageable.

Bjorn

Reply via email to