Re: [PATCH v2 0/3] PCI/DPC: Clean up DPC vs AER/EDR ownership and Kconfig

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

 



On 2/23/2024 6:15 AM, Bjorn Helgaas wrote:
From: Bjorn Helgaas <bhelgaas@xxxxxxxxxx>

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);

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(-)





[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