From: Greg Kroah-Hartman Date: Wed, 24 Aug 2022 06:53:30 +0000 (+0200) Subject: drop pci-portdrv-don-t-disable-aer-reporting-in-get_port_.patch X-Git-Tag: v4.9.326~4 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=346dc8a524a7bd483a5e937c2c2158743734293e;p=thirdparty%2Fkernel%2Fstable-queue.git drop pci-portdrv-don-t-disable-aer-reporting-in-get_port_.patch from 5.4 and 4.19 --- diff --git a/queue-4.19/pci-portdrv-don-t-disable-aer-reporting-in-get_port_.patch b/queue-4.19/pci-portdrv-don-t-disable-aer-reporting-in-get_port_.patch deleted file mode 100644 index d9d0e2248e4..00000000000 --- a/queue-4.19/pci-portdrv-don-t-disable-aer-reporting-in-get_port_.patch +++ /dev/null @@ -1,106 +0,0 @@ -From dc3cd91af19d69d02ecd896f08cc90833efdf7e2 Mon Sep 17 00:00:00 2001 -From: Sasha Levin -Date: Tue, 25 Jan 2022 08:18:19 +0100 -Subject: PCI/portdrv: Don't disable AER reporting in - get_port_device_capability() -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -From: Stefan Roese - -[ Upstream commit 8795e182b02dc87e343c79e73af6b8b7f9c5e635 ] - -AER reporting is currently disabled in the DevCtl registers of all non Root -Port PCIe devices on systems using pcie_ports_native || host->native_aer, -disabling AER completely in such systems. This is because 2bd50dd800b5 -("PCI: PCIe: Disable PCIe port services during port initialization"), added -a call to pci_disable_pcie_error_reporting() *after* the AER setup was -completed for the PCIe device tree. - -Here a longer analysis about the current status of AER enabling / -disabling upon bootup provided by Bjorn: - - pcie_portdrv_probe - pcie_port_device_register - get_port_device_capability - pci_disable_pcie_error_reporting - clear CERE NFERE FERE URRE # <-- disable for RP USP DSP - pcie_device_init - device_register # new AER service device - aer_probe - aer_enable_rootport # RP only - set_downstream_devices_error_reporting - set_device_error_reporting # self (RP) - if (RP || USP || DSP) - pci_enable_pcie_error_reporting - set CERE NFERE FERE URRE # <-- enable for RP - pci_walk_bus - set_device_error_reporting - if (RP || USP || DSP) - pci_enable_pcie_error_reporting - set CERE NFERE FERE URRE # <-- enable for USP DSP - -In a typical Root Port -> Endpoint hierarchy, the above: - - Disables Error Reporting for the Root Port, - - Enables Error Reporting for the Root Port, - - Does NOT enable Error Reporting for the Endpoint because it is not a - Root Port or Switch Port. - -In a deeper Root Port -> Upstream Switch Port -> Downstream Switch -Port -> Endpoint hierarchy: - - Disables Error Reporting for the Root Port, - - Enables Error Reporting for the Root Port, - - Enables Error Reporting for both Switch Ports, - - Does NOT enable Error Reporting for the Endpoint because it is not a - Root Port or Switch Port, - - Disables Error Reporting for the Switch Ports when pcie_portdrv_probe() - claims them. AER does not re-enable it because these are not Root - Ports. - -Remove this call to pci_disable_pcie_error_reporting() from -get_port_device_capability(), leaving the already enabled AER configuration -intact. With this change, AER is enabled in the Root Port and the PCIe -switch upstream and downstream ports. Only the PCIe Endpoints don't have -AER enabled yet. A follow-up patch will take care of this Endpoint -enabling. - -Fixes: 2bd50dd800b5 ("PCI: PCIe: Disable PCIe port services during port initialization") -Link: https://lore.kernel.org/r/20220125071820.2247260-3-sr@denx.de -Signed-off-by: Stefan Roese -Signed-off-by: Bjorn Helgaas -Reviewed-by: Pali Rohár -Cc: Rafael J. Wysocki -Cc: Bharat Kumar Gogada -Cc: Michal Simek -Cc: Yao Hongbo -Cc: Naveen Naidu -Signed-off-by: Sasha Levin ---- - drivers/pci/pcie/portdrv_core.c | 9 +-------- - 1 file changed, 1 insertion(+), 8 deletions(-) - -diff --git a/drivers/pci/pcie/portdrv_core.c b/drivers/pci/pcie/portdrv_core.c -index 7c37d815229e..216dd6e61624 100644 ---- a/drivers/pci/pcie/portdrv_core.c -+++ b/drivers/pci/pcie/portdrv_core.c -@@ -218,15 +218,8 @@ static int get_port_device_capability(struct pci_dev *dev) - - #ifdef CONFIG_PCIEAER - if (dev->aer_cap && pci_aer_available() && -- (pcie_ports_native || host->native_aer)) { -+ (pcie_ports_native || host->native_aer)) - services |= PCIE_PORT_SERVICE_AER; -- -- /* -- * Disable AER on this port in case it's been enabled by the -- * BIOS (the AER service driver will enable it when necessary). -- */ -- pci_disable_pcie_error_reporting(dev); -- } - #endif - - /* --- -2.35.1 - diff --git a/queue-4.19/series b/queue-4.19/series index ee0a5e2e8b3..684a7cf25dc 100644 --- a/queue-4.19/series +++ b/queue-4.19/series @@ -127,7 +127,6 @@ mmc-sdhci-of-esdhc-fix-refcount-leak-in-esdhc_signal.patch memstick-ms_block-fix-some-incorrect-memory-allocati.patch memstick-ms_block-fix-a-memory-leak.patch mmc-sdhci-of-at91-fix-set_uhs_signaling-rewriting-of.patch -pci-portdrv-don-t-disable-aer-reporting-in-get_port_.patch scsi-smartpqi-fix-dma-direction-for-raid-requests.patch usb-gadget-udc-amd5536-depends-on-has_dma.patch rdma-hfi1-fix-potential-memory-leak-in-setup_base_ct.patch diff --git a/queue-5.4/pci-portdrv-don-t-disable-aer-reporting-in-get_port_.patch b/queue-5.4/pci-portdrv-don-t-disable-aer-reporting-in-get_port_.patch deleted file mode 100644 index 97dc7a2e170..00000000000 --- a/queue-5.4/pci-portdrv-don-t-disable-aer-reporting-in-get_port_.patch +++ /dev/null @@ -1,106 +0,0 @@ -From 2f4f9f5cf15f56abb4c1efb0905162e33d851834 Mon Sep 17 00:00:00 2001 -From: Sasha Levin -Date: Tue, 25 Jan 2022 08:18:19 +0100 -Subject: PCI/portdrv: Don't disable AER reporting in - get_port_device_capability() -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -From: Stefan Roese - -[ Upstream commit 8795e182b02dc87e343c79e73af6b8b7f9c5e635 ] - -AER reporting is currently disabled in the DevCtl registers of all non Root -Port PCIe devices on systems using pcie_ports_native || host->native_aer, -disabling AER completely in such systems. This is because 2bd50dd800b5 -("PCI: PCIe: Disable PCIe port services during port initialization"), added -a call to pci_disable_pcie_error_reporting() *after* the AER setup was -completed for the PCIe device tree. - -Here a longer analysis about the current status of AER enabling / -disabling upon bootup provided by Bjorn: - - pcie_portdrv_probe - pcie_port_device_register - get_port_device_capability - pci_disable_pcie_error_reporting - clear CERE NFERE FERE URRE # <-- disable for RP USP DSP - pcie_device_init - device_register # new AER service device - aer_probe - aer_enable_rootport # RP only - set_downstream_devices_error_reporting - set_device_error_reporting # self (RP) - if (RP || USP || DSP) - pci_enable_pcie_error_reporting - set CERE NFERE FERE URRE # <-- enable for RP - pci_walk_bus - set_device_error_reporting - if (RP || USP || DSP) - pci_enable_pcie_error_reporting - set CERE NFERE FERE URRE # <-- enable for USP DSP - -In a typical Root Port -> Endpoint hierarchy, the above: - - Disables Error Reporting for the Root Port, - - Enables Error Reporting for the Root Port, - - Does NOT enable Error Reporting for the Endpoint because it is not a - Root Port or Switch Port. - -In a deeper Root Port -> Upstream Switch Port -> Downstream Switch -Port -> Endpoint hierarchy: - - Disables Error Reporting for the Root Port, - - Enables Error Reporting for the Root Port, - - Enables Error Reporting for both Switch Ports, - - Does NOT enable Error Reporting for the Endpoint because it is not a - Root Port or Switch Port, - - Disables Error Reporting for the Switch Ports when pcie_portdrv_probe() - claims them. AER does not re-enable it because these are not Root - Ports. - -Remove this call to pci_disable_pcie_error_reporting() from -get_port_device_capability(), leaving the already enabled AER configuration -intact. With this change, AER is enabled in the Root Port and the PCIe -switch upstream and downstream ports. Only the PCIe Endpoints don't have -AER enabled yet. A follow-up patch will take care of this Endpoint -enabling. - -Fixes: 2bd50dd800b5 ("PCI: PCIe: Disable PCIe port services during port initialization") -Link: https://lore.kernel.org/r/20220125071820.2247260-3-sr@denx.de -Signed-off-by: Stefan Roese -Signed-off-by: Bjorn Helgaas -Reviewed-by: Pali Rohár -Cc: Rafael J. Wysocki -Cc: Bharat Kumar Gogada -Cc: Michal Simek -Cc: Yao Hongbo -Cc: Naveen Naidu -Signed-off-by: Sasha Levin ---- - drivers/pci/pcie/portdrv_core.c | 9 +-------- - 1 file changed, 1 insertion(+), 8 deletions(-) - -diff --git a/drivers/pci/pcie/portdrv_core.c b/drivers/pci/pcie/portdrv_core.c -index 8637f6068f9c..066406d6d0ee 100644 ---- a/drivers/pci/pcie/portdrv_core.c -+++ b/drivers/pci/pcie/portdrv_core.c -@@ -222,15 +222,8 @@ static int get_port_device_capability(struct pci_dev *dev) - - #ifdef CONFIG_PCIEAER - if (dev->aer_cap && pci_aer_available() && -- (pcie_ports_native || host->native_aer)) { -+ (pcie_ports_native || host->native_aer)) - services |= PCIE_PORT_SERVICE_AER; -- -- /* -- * Disable AER on this port in case it's been enabled by the -- * BIOS (the AER service driver will enable it when necessary). -- */ -- pci_disable_pcie_error_reporting(dev); -- } - #endif - - /* --- -2.35.1 - diff --git a/queue-5.4/series b/queue-5.4/series index 2e2e8d52d1a..f82b7fd5d8b 100644 --- a/queue-5.4/series +++ b/queue-5.4/series @@ -179,7 +179,6 @@ mmc-sdhci-of-esdhc-fix-refcount-leak-in-esdhc_signal.patch memstick-ms_block-fix-some-incorrect-memory-allocati.patch memstick-ms_block-fix-a-memory-leak.patch mmc-sdhci-of-at91-fix-set_uhs_signaling-rewriting-of.patch -pci-portdrv-don-t-disable-aer-reporting-in-get_port_.patch scsi-smartpqi-fix-dma-direction-for-raid-requests.patch usb-gadget-udc-amd5536-depends-on-has_dma.patch rdma-hns-fix-incorrect-clearing-of-interrupt-status-.patch