linux-pci.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Kuppuswamy Sathyanarayanan <sathyanarayanan.kuppuswamy@linux.intel.com>
To: Ethan Zhao <haifeng.zhao@linux.intel.com>,
	Bjorn Helgaas <helgaas@kernel.org>,
	linux-pci@vger.kernel.org
Cc: linux-kernel@vger.kernel.org,
	Matthew W Carlis <mattc@purestorage.com>,
	Keith Busch <kbusch@kernel.org>, Lukas Wunner <lukas@wunner.de>,
	Mika Westerberg <mika.westerberg@linux.intel.com>,
	Jesse Brandeburg <jesse.brandeburg@intel.com>,
	Bjorn Helgaas <bhelgaas@google.com>
Subject: Re: [PATCH v2 0/3] PCI/DPC: Clean up DPC vs AER/EDR ownership and Kconfig
Date: Mon, 26 Feb 2024 22:35:22 -0800	[thread overview]
Message-ID: <52245cb8-879e-4997-a1b5-cdfbd702dee7@linux.intel.com> (raw)
In-Reply-To: <89984f11-b84e-4da0-ab5b-f2048461aae0@linux.intel.com>

Hi,

On 2/26/24 10:18 PM, Ethan Zhao wrote:
> On 2/23/2024 6:15 AM, Bjorn Helgaas wrote:
>> From: Bjorn Helgaas <bhelgaas@google.com>
>>
>> Previously we could request control of DPC without AER, which is illegal
>> per spec.  Also, we could enable CONFIG_PCIE_DPC without CONFIG_PCIE_EDR,
>> which is also illegal.  This series addresses both.
>
> I have a question here, how to understand the relationship EDR & AER ?
> somewhere EDR touches AER status without checking _OSC granted bits,
> such as
>    pci_aer_raw_clear_status(edev);


Which_OSC bits?

EDR code will only get triggered if OS advertises the EDR support (which
also means OS supports AER and DPC), and both AER and DPC is owned by
the firmware. During the EDR notification, the OS is allowed to touch AER
and DPC registers. So there is no problem with EDR code using AER routines.


>
> sometimes EDR calling AER with host->native_aer checked, like
>
> pcie_do_recovery()
> {
>  ...
>  if (host->native_aer || pcie_ports_native) {
>         pcie_clear_device_status(dev);
>         pci_aer_clear_nonfatal_status(dev);
>     }
>  ...
> }
>
> That is really confusing. could we do some cleanup to eliminate it ?
> such as seperate AER code into common code and runtime part.
>
>
> Thanks,
> Ethan
>  
>
>>
>> Bjorn Helgaas (3):
>>    PCI/DPC: Request DPC only if also requesting AER
>>    PCI/DPC: Remove CONFIG_PCIE_EDR
>>    PCI/DPC: Encapsulate pci_acpi_add_edr_notifier()
>>
>>   drivers/acpi/pci_root.c   | 22 ++++++++++++----------
>>   drivers/pci/pci.h         |  4 ++++
>>   drivers/pci/pcie/Kconfig  | 14 ++++----------
>>   drivers/pci/pcie/Makefile |  5 ++++-
>>   drivers/pci/pcie/dpc.c    | 10 ----------
>>   include/linux/pci-acpi.h  |  8 --------
>>   6 files changed, 24 insertions(+), 39 deletions(-)
>>
-- 
Sathyanarayanan Kuppuswamy
Linux Kernel Developer


  reply	other threads:[~2024-02-27  6:37 UTC|newest]

Thread overview: 18+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-02-22 22:15 [PATCH v2 0/3] PCI/DPC: Clean up DPC vs AER/EDR ownership and Kconfig Bjorn Helgaas
2024-02-22 22:15 ` [PATCH v2 1/3] PCI/DPC: Request DPC only if also requesting AER Bjorn Helgaas
2024-02-25 19:46   ` Kuppuswamy Sathyanarayanan
2024-02-26 15:18     ` Bjorn Helgaas
2024-02-26 15:46       ` Kuppuswamy Sathyanarayanan
2024-02-26 16:33         ` Bjorn Helgaas
2024-02-26 16:50           ` Kuppuswamy Sathyanarayanan
2024-02-22 22:15 ` [PATCH v2 2/3] PCI/DPC: Remove CONFIG_PCIE_EDR Bjorn Helgaas
2024-02-25 20:05   ` Kuppuswamy Sathyanarayanan
2024-03-01 23:06     ` Bjorn Helgaas
2024-03-02  6:42       ` Kuppuswamy Sathyanarayanan
2024-02-22 22:15 ` [PATCH v2 3/3] PCI/DPC: Encapsulate pci_acpi_add_edr_notifier() Bjorn Helgaas
2024-02-25 20:06   ` Kuppuswamy Sathyanarayanan
2024-02-26 15:25     ` Bjorn Helgaas
2024-02-27  6:18 ` [PATCH v2 0/3] PCI/DPC: Clean up DPC vs AER/EDR ownership and Kconfig Ethan Zhao
2024-02-27  6:35   ` Kuppuswamy Sathyanarayanan [this message]
2024-02-27  7:12     ` Ethan Zhao
2024-02-29  0:00       ` Kuppuswamy Sathyanarayanan

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=52245cb8-879e-4997-a1b5-cdfbd702dee7@linux.intel.com \
    --to=sathyanarayanan.kuppuswamy@linux.intel.com \
    --cc=bhelgaas@google.com \
    --cc=haifeng.zhao@linux.intel.com \
    --cc=helgaas@kernel.org \
    --cc=jesse.brandeburg@intel.com \
    --cc=kbusch@kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-pci@vger.kernel.org \
    --cc=lukas@wunner.de \
    --cc=mattc@purestorage.com \
    --cc=mika.westerberg@linux.intel.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).