Message ID | cover.1600457297.git.sathyanarayanan.kuppuswamy@linux.intel.com |
---|---|
Headers | show |
Series | Simplify PCIe native ownership detection logic | expand |
Hi Bjorn, On 9/27/20 6:11 PM, Kuppuswamy Sathyanarayanan wrote: > Currently, PCIe capabilities ownership status is detected by > verifying the status of pcie_ports_native, pcie_ports_dpc_native > and _OSC negotiated results (cached in struct pci_host_bridge > ->native_* members). But this logic can be simplified, and we can > use only struct pci_host_bridge ->native_* members to detect it. > Did you get this patch set or do I need to send it again? > This patchset removes the distributed checks for pcie_ports_native, > pcie_ports_dpc_native parameters. > > Changes since v8: > * Simplified setting _OSC ownwership logic > * Moved bridge->native_ltr out of #ifdef CONFIG_PCIEPORTBUS. > > Changes since v7: > * Fixed "fix array_size.cocci warnings". > > Changes since v6: > * Created new patch for CONFIG_PCIEPORTBUS check in > pci_init_host_bridge(). > * Added warning message for a case when pcie_ports_native > overrides _OSC negotiation result. > > Changes since v5: > * Rebased on top of v5.8-rc1 > > Changes since v4: > * Changed the patch set title (Original link: https://lkml.org/lkml/2020/5/26/1710) > * Added AER/DPC dependency logic cleanup fixes. > > > Kuppuswamy Sathyanarayanan (5): > PCI: Conditionally initialize host bridge native_* members > ACPI/PCI: Ignore _OSC negotiation result if pcie_ports_native is set. > ACPI/PCI: Ignore _OSC DPC negotiation result if pcie_ports_dpc_native > is set. > PCI/portdrv: Remove redundant pci_aer_available() check in DPC enable > logic > PCI/DPC: Move AER/DPC dependency checks out of DPC driver > > drivers/acpi/pci_root.c | 37 ++++++++++++++++++++++--------- > drivers/pci/hotplug/pciehp_core.c | 2 +- > drivers/pci/pci-acpi.c | 3 --- > drivers/pci/pcie/aer.c | 2 +- > drivers/pci/pcie/dpc.c | 3 --- > drivers/pci/pcie/portdrv.h | 2 -- > drivers/pci/pcie/portdrv_core.c | 13 +++++------ > drivers/pci/probe.c | 6 +++-- > include/linux/acpi.h | 2 ++ > include/linux/pci.h | 2 ++ > 10 files changed, 42 insertions(+), 30 deletions(-) >
On Tue, Sep 29, 2020 at 4:00 PM Kuppuswamy, Sathyanarayanan <sathyanarayanan.kuppuswamy@linux.intel.com> wrote: > > Hi Bjorn, > > On 9/27/20 6:11 PM, Kuppuswamy Sathyanarayanan wrote: > > Currently, PCIe capabilities ownership status is detected by > > verifying the status of pcie_ports_native, pcie_ports_dpc_native > > and _OSC negotiated results (cached in struct pci_host_bridge > > ->native_* members). But this logic can be simplified, and we can > > use only struct pci_host_bridge ->native_* members to detect it. > > > Did you get this patch set or do I need to send it again? I got it, thanks. More importantly, it looks like linux-pci got it, too :) $ b4 am -om/ https://lore.kernel.org/r/a640e9043db50f5adee8e38f5c60ff8423f3f598.1600457297.git.sathyanarayanan.kuppuswamy@linux.intel.com Looking up https://lore.kernel.org/r/a640e9043db50f5adee8e38f5c60ff8423f3f598.1600457297.git.sathyanarayanan.kuppuswamy%40linux.intel.com Grabbing thread from lore.kernel.org/linux-pci Reduced thread to strict matches only (18->10) Analyzing 10 messages in the thread --- Writing m/v9_20200922_sathyanarayanan_kuppuswamy_simplify_pcie_native_ownership_detection_logic.mbx [PATCH v9 1/5] PCI: Conditionally initialize host bridge native_* members [PATCH v9 2/5] ACPI/PCI: Ignore _OSC negotiation result if pcie_ports_native is set. [PATCH v9 3/5] ACPI/PCI: Ignore _OSC DPC negotiation result if pcie_ports_dpc_native is set. [PATCH v9 4/5] PCI/portdrv: Remove redundant pci_aer_available() check in DPC enable logic [PATCH v9 5/5] PCI/DPC: Move AER/DPC dependency checks out of DPC driver --- Total patches: 5 --- Cover: m/v9_20200922_sathyanarayanan_kuppuswamy_simplify_pcie_native_ownership_detection_logic.cover Link: https://lore.kernel.org/r/cover.1600457297.git.sathyanarayanan.kuppuswamy@linux.intel.com Base: not found (applies clean to current tree) git am m/v9_20200922_sathyanarayanan_kuppuswamy_simplify_pcie_native_ownership_detection_logic.mbx
Hi, On 9/29/20 2:04 PM, Bjorn Helgaas wrote: > On Tue, Sep 29, 2020 at 4:00 PM Kuppuswamy, Sathyanarayanan > <sathyanarayanan.kuppuswamy@linux.intel.com> wrote: >> >> Hi Bjorn, >> >> On 9/27/20 6:11 PM, Kuppuswamy Sathyanarayanan wrote: >>> Currently, PCIe capabilities ownership status is detected by >>> verifying the status of pcie_ports_native, pcie_ports_dpc_native >>> and _OSC negotiated results (cached in struct pci_host_bridge >>> ->native_* members). But this logic can be simplified, and we can >>> use only struct pci_host_bridge ->native_* members to detect it. >>> >> Did you get this patch set or do I need to send it again? > > I got it, thanks. More importantly, it looks like linux-pci got it, too :) Thanks for the confirmation. > > $ b4 am -om/ https://lore.kernel.org/r/a640e9043db50f5adee8e38f5c60ff8423f3f598.1600457297.git.sathyanarayanan.kuppuswamy@linux.intel.com > Looking up https://lore.kernel.org/r/a640e9043db50f5adee8e38f5c60ff8423f3f598.1600457297.git.sathyanarayanan.kuppuswamy%40linux.intel.com > Grabbing thread from lore.kernel.org/linux-pci > Reduced thread to strict matches only (18->10) > Analyzing 10 messages in the thread > --- > Writing m/v9_20200922_sathyanarayanan_kuppuswamy_simplify_pcie_native_ownership_detection_logic.mbx > [PATCH v9 1/5] PCI: Conditionally initialize host bridge native_* members > [PATCH v9 2/5] ACPI/PCI: Ignore _OSC negotiation result if > pcie_ports_native is set. > [PATCH v9 3/5] ACPI/PCI: Ignore _OSC DPC negotiation result if > pcie_ports_dpc_native is set. > [PATCH v9 4/5] PCI/portdrv: Remove redundant pci_aer_available() > check in DPC enable logic > [PATCH v9 5/5] PCI/DPC: Move AER/DPC dependency checks out of DPC driver > --- > Total patches: 5 > --- > Cover: m/v9_20200922_sathyanarayanan_kuppuswamy_simplify_pcie_native_ownership_detection_logic.cover > Link: https://lore.kernel.org/r/cover.1600457297.git.sathyanarayanan.kuppuswamy@linux.intel.com > Base: not found (applies clean to current tree) > git am m/v9_20200922_sathyanarayanan_kuppuswamy_simplify_pcie_native_ownership_detection_logic.mbx >
From: Kuppuswamy Sathyanarayanan <sathyanarayanan.kuppuswamy@linux.intel.com> Currently, PCIe capabilities ownership status is detected by verifying the status of pcie_ports_native, pcie_ports_dpc_native and _OSC negotiated results (cached in struct pci_host_bridge ->native_* members). But this logic can be simplified, and we can use only struct pci_host_bridge ->native_* members to detect it. This patchset removes the distributed checks for pcie_ports_native, pcie_ports_dpc_native parameters. Changes since v8: * Simplified setting _OSC ownwership logic * Moved bridge->native_ltr out of #ifdef CONFIG_PCIEPORTBUS. Changes since v7: * Fixed "fix array_size.cocci warnings". Changes since v6: * Created new patch for CONFIG_PCIEPORTBUS check in pci_init_host_bridge(). * Added warning message for a case when pcie_ports_native overrides _OSC negotiation result. Changes since v5: * Rebased on top of v5.8-rc1 Changes since v4: * Changed the patch set title (Original link: https://lkml.org/lkml/2020/5/26/1710) * Added AER/DPC dependency logic cleanup fixes. Kuppuswamy Sathyanarayanan (5): PCI: Conditionally initialize host bridge native_* members ACPI/PCI: Ignore _OSC negotiation result if pcie_ports_native is set. ACPI/PCI: Ignore _OSC DPC negotiation result if pcie_ports_dpc_native is set. PCI/portdrv: Remove redundant pci_aer_available() check in DPC enable logic PCI/DPC: Move AER/DPC dependency checks out of DPC driver drivers/acpi/pci_root.c | 37 ++++++++++++++++++++++--------- drivers/pci/hotplug/pciehp_core.c | 2 +- drivers/pci/pci-acpi.c | 3 --- drivers/pci/pcie/aer.c | 2 +- drivers/pci/pcie/dpc.c | 3 --- drivers/pci/pcie/portdrv.h | 2 -- drivers/pci/pcie/portdrv_core.c | 13 +++++------ drivers/pci/probe.c | 6 +++-- include/linux/acpi.h | 2 ++ include/linux/pci.h | 2 ++ 10 files changed, 42 insertions(+), 30 deletions(-)