Re: [PATCH v4 1/2] PCI/portdrv: Add option to setup IRQs for platform-specific Service Errors

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

 



On Tuesday 31 May 2022 16:31:58 Bjorn Helgaas wrote:
> On Mon, May 30, 2022 at 10:32:06AM +0200, Pali Rohár wrote:
> > On Monday 30 May 2022 10:18:41 Stefan Roese wrote:
> > > On 28.05.22 02:09, Bjorn Helgaas wrote:
> > > > In subject line, I assume you mean "System Errors" instead of "Service
> > > > Errors"?
> > > 
> > > Background: I took over submitting this patchset from Bharat. Here his
> > > last revision:
> > > https://www.spinics.net/lists/kernel/msg2960164.html
> 
> Here's the link to the more usable lore archive:
> https://lore.kernel.org/all/1542206878-24587-1-git-send-email-bharat.kumar.gogada@xxxxxxxxxx/
> 
> > > To answer your question I personally think too, that "System Errors" is
> > > more appropriate than "Service Errors". But still this patchset replaces
> > > or better enhances the already present pcie_init_service_irqs() by a
> > > platform-specific version. I can only suspect, that this is the
> > > reasoning for this "Service" naming.
> > 
> > Hello! Based on the below text "Here the quote from Bharat's original
> > cover letter:" I think that the better naming should be: "Service
> > interrupts". Because it adds support for interrupts from PCIe services
> > like AER, PME or HP. Only AER are errors, other IRQs are just services.
> 
> The question I'm trying to answer is whether this series concerns the
> "System Error" mechanism or the "Error Interrupt" mechanism.  We
> should figure out which one this is and use the correct name.

My understanding is that neither "System Error", nor "Error Interrupt".
But patch series is about "dedicated IRQ lines for services". One of
PCIe service is AER, which is one of the mostly used PCIe service in
kernel and therefore it is the root of confusions with keyword "error".

> The sec 6.2.4.1.2 cited below clearly refers to the AER Root Error
> Command register, which controls interrupt generation via INTx, MSI,
> or MSI-X, i.e., the standard "Error Interrupt" shown on the RIGHT side
> of Figure 6-3 in sec 6.2.6.
> 
> The "System Error" signaling on the LEFT side of Figure 6-3 would be
> controlled by the Root Control register in the PCIe capability.
> 
> It should be easy to use setpci to set/clear these two sets of enable
> bits and figure out which path is of interest here.
> 
> > > > On Fri, Jan 14, 2022 at 08:58:33AM +0100, Stefan Roese wrote:
> > > > > From: Bharat Kumar Gogada <bharat.kumar.gogada@xxxxxxxxxx>
> 
> > > > > As per section 6.2.4.1.2, 6.2.6 in PCIe r4.0 (and later versions),
> > > > > platform-specific System Errors like AER can be delivered via platform-
> > > > > specific interrupt lines.
> 
> > > > ...
> > > > 6.7.3.4 ("Software Notification of Hot-Plug Events") talks about PME
> > > > and Hot-Plug Event interrupts, but these aren't errors, and I only see
> > > > signaling via INTx, MSI, or MSI-X.  Is there provision for a different
> > > > method?
> > > 
> > > Here the quote from Bharat's original cover letter:
> > > "Some platforms have dedicated IRQ lines for PCIe services like AER/PME
> > > etc. The root complex on these platform will use these seperate IRQ
> > > lines to report AER/PME etc., interrupts and will not generate MSI/
> > > MSI-X/INTx interrupts for these services.
> > 
> > This is the best explanation of this change.
> 
> As far as I can tell, "dedicated IRQ lines for services like AER/PME
> etc" would violate the PCIe spec.

I think too, that this does not conform to PCIe spec.

> That's OK, we can work around that
> sort of thing, but it needs to be clearly called out as some kind of
> quirk and not mixed in with things like System Error signaling, which
> is allowed to be platform-specific.
> 
> Bjorn

I agree.



[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