Message ID | 20231103190758.82911-4-mario.limonciello@amd.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | Improvements to pcie_bandwidth_available() for eGPUs | expand |
Hi Mario, kernel test robot noticed the following build errors: [auto build test ERROR on pci/for-linus] [also build test ERROR on drm-misc/drm-misc-next westeri-thunderbolt/next rafael-pm/linux-next rafael-pm/acpi-bus linus/master rafael-pm/devprop v6.6 next-20231103] [cannot apply to pci/next] [If your patch is applied to the wrong git tree, kindly drop us a note. And when submitting patch, we suggest to use '--base' as documented in https://git-scm.com/docs/git-format-patch#_base_tree_information] url: https://github.com/intel-lab-lkp/linux/commits/Mario-Limonciello/drm-nouveau-Switch-from-pci_is_thunderbolt_attached-to-dev_is_removable/20231104-030945 base: https://git.kernel.org/pub/scm/linux/kernel/git/pci/pci.git for-linus patch link: https://lore.kernel.org/r/20231103190758.82911-4-mario.limonciello%40amd.com patch subject: [PATCH v2 3/9] PCI: Drop pci_is_thunderbolt_attached() config: loongarch-randconfig-002-20231104 (https://download.01.org/0day-ci/archive/20231104/202311040800.zpVIwNrB-lkp@intel.com/config) compiler: loongarch64-linux-gcc (GCC) 13.2.0 reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20231104/202311040800.zpVIwNrB-lkp@intel.com/reproduce) If you fix the issue in a separate patch/commit (i.e. not just a new version of the same patch/commit), kindly add following tags | Reported-by: kernel test robot <lkp@intel.com> | Closes: https://lore.kernel.org/oe-kbuild-all/202311040800.zpVIwNrB-lkp@intel.com/ All errors (new ones prefixed by >>): drivers/gpu/drm/amd/amdgpu/nbio_v2_3.c: In function 'nbio_v2_3_enable_aspm': >> drivers/gpu/drm/amd/amdgpu/nbio_v2_3.c:364:21: error: implicit declaration of function 'pci_is_thunderbolt_attached' [-Werror=implicit-function-declaration] 364 | if (pci_is_thunderbolt_attached(adev->pdev)) | ^~~~~~~~~~~~~~~~~~~~~~~~~~~ cc1: some warnings being treated as errors -- drivers/gpu/drm/amd/amdgpu/amdgpu_device.c: In function 'amdgpu_device_ip_early_init': >> drivers/gpu/drm/amd/amdgpu/amdgpu_device.c:2118:14: error: implicit declaration of function 'pci_is_thunderbolt_attached' [-Werror=implicit-function-declaration] 2118 | !pci_is_thunderbolt_attached(to_pci_dev(dev->dev))) | ^~~~~~~~~~~~~~~~~~~~~~~~~~~ cc1: some warnings being treated as errors vim +/pci_is_thunderbolt_attached +364 drivers/gpu/drm/amd/amdgpu/nbio_v2_3.c f1213b15976881d Evan Quan 2020-08-18 350 f1213b15976881d Evan Quan 2020-08-18 351 static void nbio_v2_3_enable_aspm(struct amdgpu_device *adev, f1213b15976881d Evan Quan 2020-08-18 352 bool enable) f1213b15976881d Evan Quan 2020-08-18 353 { f1213b15976881d Evan Quan 2020-08-18 354 uint32_t def, data; f1213b15976881d Evan Quan 2020-08-18 355 f1213b15976881d Evan Quan 2020-08-18 356 def = data = RREG32_PCIE(smnPCIE_LC_CNTL); f1213b15976881d Evan Quan 2020-08-18 357 f1213b15976881d Evan Quan 2020-08-18 358 if (enable) { f1213b15976881d Evan Quan 2020-08-18 359 /* Disable ASPM L0s/L1 first */ f1213b15976881d Evan Quan 2020-08-18 360 data &= ~(PCIE_LC_CNTL__LC_L0S_INACTIVITY_MASK | PCIE_LC_CNTL__LC_L1_INACTIVITY_MASK); f1213b15976881d Evan Quan 2020-08-18 361 f1213b15976881d Evan Quan 2020-08-18 362 data |= NAVI10_PCIE__LC_L0S_INACTIVITY_DEFAULT << PCIE_LC_CNTL__LC_L0S_INACTIVITY__SHIFT; f1213b15976881d Evan Quan 2020-08-18 363 f1213b15976881d Evan Quan 2020-08-18 @364 if (pci_is_thunderbolt_attached(adev->pdev)) f1213b15976881d Evan Quan 2020-08-18 365 data |= NAVI10_PCIE__LC_L1_INACTIVITY_TBT_DEFAULT << PCIE_LC_CNTL__LC_L1_INACTIVITY__SHIFT; f1213b15976881d Evan Quan 2020-08-18 366 else f1213b15976881d Evan Quan 2020-08-18 367 data |= NAVI10_PCIE__LC_L1_INACTIVITY_DEFAULT << PCIE_LC_CNTL__LC_L1_INACTIVITY__SHIFT; f1213b15976881d Evan Quan 2020-08-18 368 f1213b15976881d Evan Quan 2020-08-18 369 data &= ~PCIE_LC_CNTL__LC_PMI_TO_L1_DIS_MASK; f1213b15976881d Evan Quan 2020-08-18 370 } else { f1213b15976881d Evan Quan 2020-08-18 371 /* Disbale ASPM L1 */ f1213b15976881d Evan Quan 2020-08-18 372 data &= ~PCIE_LC_CNTL__LC_L1_INACTIVITY_MASK; f1213b15976881d Evan Quan 2020-08-18 373 /* Disable ASPM TxL0s */ f1213b15976881d Evan Quan 2020-08-18 374 data &= ~PCIE_LC_CNTL__LC_L0S_INACTIVITY_MASK; f1213b15976881d Evan Quan 2020-08-18 375 /* Disable ACPI L1 */ f1213b15976881d Evan Quan 2020-08-18 376 data |= PCIE_LC_CNTL__LC_PMI_TO_L1_DIS_MASK; f1213b15976881d Evan Quan 2020-08-18 377 } f1213b15976881d Evan Quan 2020-08-18 378 f1213b15976881d Evan Quan 2020-08-18 379 if (def != data) f1213b15976881d Evan Quan 2020-08-18 380 WREG32_PCIE(smnPCIE_LC_CNTL, data); f1213b15976881d Evan Quan 2020-08-18 381 } f1213b15976881d Evan Quan 2020-08-18 382
On Fri, 3 Nov 2023, Mario Limonciello wrote: > All callers have switched to dev_is_removable() for detecting > hotpluggable PCIe devices. > > Signed-off-by: Mario Limonciello <mario.limonciello@amd.com> > --- > include/linux/pci.h | 22 ---------------------- > 1 file changed, 22 deletions(-) > > diff --git a/include/linux/pci.h b/include/linux/pci.h > index b56417276042..530b0a360514 100644 > --- a/include/linux/pci.h > +++ b/include/linux/pci.h > @@ -2616,28 +2616,6 @@ static inline bool pci_ari_enabled(struct pci_bus *bus) > return bus->self && bus->self->ari_enabled; > } > > -/** > - * pci_is_thunderbolt_attached - whether device is on a Thunderbolt daisy chain > - * @pdev: PCI device to check > - * > - * Walk upwards from @pdev and check for each encountered bridge if it's part > - * of a Thunderbolt controller. Reaching the host bridge means @pdev is not > - * Thunderbolt-attached. (But rather soldered to the mainboard usually.) > - */ > -static inline bool pci_is_thunderbolt_attached(struct pci_dev *pdev) > -{ > - struct pci_dev *parent = pdev; > - > - if (pdev->is_thunderbolt) > - return true; > - > - while ((parent = pci_upstream_bridge(parent))) > - if (parent->is_thunderbolt) > - return true; > - > - return false; > -} > - > #if defined(CONFIG_PCIEPORTBUS) || defined(CONFIG_EEH) > void pci_uevent_ers(struct pci_dev *pdev, enum pci_ers_result err_type); > #endif > I don't think all callers have been removed. Ah, lkp has caught the same problem.
On 11/6/2023 06:33, Ilpo Järvinen wrote: > On Fri, 3 Nov 2023, Mario Limonciello wrote: > >> All callers have switched to dev_is_removable() for detecting >> hotpluggable PCIe devices. >> >> Signed-off-by: Mario Limonciello <mario.limonciello@amd.com> >> --- >> include/linux/pci.h | 22 ---------------------- >> 1 file changed, 22 deletions(-) >> >> diff --git a/include/linux/pci.h b/include/linux/pci.h >> index b56417276042..530b0a360514 100644 >> --- a/include/linux/pci.h >> +++ b/include/linux/pci.h >> @@ -2616,28 +2616,6 @@ static inline bool pci_ari_enabled(struct pci_bus *bus) >> return bus->self && bus->self->ari_enabled; >> } >> >> -/** >> - * pci_is_thunderbolt_attached - whether device is on a Thunderbolt daisy chain >> - * @pdev: PCI device to check >> - * >> - * Walk upwards from @pdev and check for each encountered bridge if it's part >> - * of a Thunderbolt controller. Reaching the host bridge means @pdev is not >> - * Thunderbolt-attached. (But rather soldered to the mainboard usually.) >> - */ >> -static inline bool pci_is_thunderbolt_attached(struct pci_dev *pdev) >> -{ >> - struct pci_dev *parent = pdev; >> - >> - if (pdev->is_thunderbolt) >> - return true; >> - >> - while ((parent = pci_upstream_bridge(parent))) >> - if (parent->is_thunderbolt) >> - return true; >> - >> - return false; >> -} >> - >> #if defined(CONFIG_PCIEPORTBUS) || defined(CONFIG_EEH) >> void pci_uevent_ers(struct pci_dev *pdev, enum pci_ers_result err_type); >> #endif >> > > I don't think all callers have been removed. Ah, lkp has caught the same > problem. > As I mentioned in the cover letter this series is done on 6.6 + a patch going into 6.7-rc1. The LKP report will drop off when I rebase the series on 6.7-rc1. As it's not yet in Linus' tree here is that patch so you can see it: https://gitlab.freedesktop.org/agd5f/linux/-/commit/7b1c6263eaf4fd64ffe1cafdc504a42ee4bfbb33
diff --git a/include/linux/pci.h b/include/linux/pci.h index b56417276042..530b0a360514 100644 --- a/include/linux/pci.h +++ b/include/linux/pci.h @@ -2616,28 +2616,6 @@ static inline bool pci_ari_enabled(struct pci_bus *bus) return bus->self && bus->self->ari_enabled; } -/** - * pci_is_thunderbolt_attached - whether device is on a Thunderbolt daisy chain - * @pdev: PCI device to check - * - * Walk upwards from @pdev and check for each encountered bridge if it's part - * of a Thunderbolt controller. Reaching the host bridge means @pdev is not - * Thunderbolt-attached. (But rather soldered to the mainboard usually.) - */ -static inline bool pci_is_thunderbolt_attached(struct pci_dev *pdev) -{ - struct pci_dev *parent = pdev; - - if (pdev->is_thunderbolt) - return true; - - while ((parent = pci_upstream_bridge(parent))) - if (parent->is_thunderbolt) - return true; - - return false; -} - #if defined(CONFIG_PCIEPORTBUS) || defined(CONFIG_EEH) void pci_uevent_ers(struct pci_dev *pdev, enum pci_ers_result err_type); #endif
All callers have switched to dev_is_removable() for detecting hotpluggable PCIe devices. Signed-off-by: Mario Limonciello <mario.limonciello@amd.com> --- include/linux/pci.h | 22 ---------------------- 1 file changed, 22 deletions(-)