Re: [PATCH] ACPI/PCI: pci_link: change log level of no _PRS messages

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Sat, Feb 10, 2018 at 09:08:42AM +0100, Rafael J. Wysocki wrote:
> On Sat, Feb 10, 2018 at 2:05 AM, Bjorn Helgaas <helgaas@xxxxxxxxxx> wrote:
> > On Fri, Feb 09, 2018 at 02:56:43PM -0800, Alex Hung wrote:
> >> In recent Intel hardware the IRQs become non-configurable after BIOS
> >> initializes them in PEI phase and _PRS objects are no longer included in
> >> ASL.
> >>
> >> This is the same as "static (non-configurable) devices do not
> >> specify a _PRS object" in ACPI spec. As a result, error messages
> >> saying "ACPI Exception: AE_NOT_FOUND, Evaluating _PRS" does not need to
> >> be in kernel messages all the time but only when debug is enabled.
> >
> > I agree and would even go further: _PRS is optional and I don't think
> > there's a reason to log anything at all if it's absent.  A log message
> > like "failed to evaluate _PRS" makes people think something is wrong
> > when in fact nothing is wrong.
> 
> _PRS is required if the link object is pointed to by a _PRT entry.

The closest thing I see with a quick look is ACPI 6.0, sec 6.2.13:

  These objects [PCI Interrupt Link Devices] have _PRS, _CRS, _SRS,
  and _DIS control methods to allocate the interrupt.

I don't read that as a requirement for _PRS in particular; I read it
as saying that the interrupt link devices use the normal device
configuration method, i.e., _CRS is required and _PRS and _SRS are
optional and needed for configurable devices but not for static ones.

But this is just a drive-by comment and I'm really fine with whatever
you decide to do.

> > That leads to the mindset of treating a missing _PRS as an error when
> > it's not.  In fact, it looks like acpi_pci_link_add() *does* treat
> > this as an error.  If _PRS doesn't exist, it skips the _CRS
> > evaluation.  That seems wrong.
> 
> I agree here.  _CRS still should be evaluated if _PRS is not there in
> general, but in some cases the lack of _PRS *is* an error.



[Index of Archives]     [DMA Engine]     [Linux Coverity]     [Linux USB]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Greybus]

  Powered by Linux