[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <202305170639.XU3djFZX-lkp@intel.com>
Date: Wed, 17 May 2023 07:21:48 +0800
From: kernel test robot <lkp@...el.com>
To: Shuai Xue <xueshuai@...ux.alibaba.com>, helgaas@...nel.org,
yangyicong@...wei.com, will@...nel.org,
Jonathan.Cameron@...wei.com, baolin.wang@...ux.alibaba.com,
robin.murphy@....com
Cc: oe-kbuild-all@...ts.linux.dev, linux-kernel@...r.kernel.org,
linux-arm-kernel@...ts.infradead.org, linux-pci@...r.kernel.org,
rdunlap@...radead.org, mark.rutland@....com,
zhuo.song@...ux.alibaba.com, xueshuai@...ux.alibaba.com
Subject: Re: [PATCH v4 3/4] drivers/perf: add DesignWare PCIe PMU driver
Hi Shuai,
kernel test robot noticed the following build errors:
[auto build test ERROR on pci/next]
[also build test ERROR on pci/for-linus soc/for-next linus/master v6.4-rc2 next-20230516]
[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/Shuai-Xue/PCI-move-Alibaba-Vendor-ID-linux-pci_ids-h/20230517-013326
base: https://git.kernel.org/pub/scm/linux/kernel/git/pci/pci.git next
patch link: https://lore.kernel.org/r/20230516130110.59632-4-xueshuai%40linux.alibaba.com
patch subject: [PATCH v4 3/4] drivers/perf: add DesignWare PCIe PMU driver
config: sh-allmodconfig
compiler: sh4-linux-gcc (GCC) 12.1.0
reproduce (this is a W=1 build):
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
# https://github.com/intel-lab-lkp/linux/commit/f576345a26fff4584ed49f0f42e03c65d8a7f2bf
git remote add linux-review https://github.com/intel-lab-lkp/linux
git fetch --no-tags linux-review Shuai-Xue/PCI-move-Alibaba-Vendor-ID-linux-pci_ids-h/20230517-013326
git checkout f576345a26fff4584ed49f0f42e03c65d8a7f2bf
# save the config file
mkdir build_dir && cp config build_dir/.config
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-12.1.0 make.cross W=1 O=build_dir ARCH=sh olddefconfig
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-12.1.0 make.cross W=1 O=build_dir ARCH=sh SHELL=/bin/bash drivers/perf/
If you fix the issue, kindly add following tag where applicable
| Reported-by: kernel test robot <lkp@...el.com>
| Link: https://lore.kernel.org/oe-kbuild-all/202305170639.XU3djFZX-lkp@intel.com/
All errors (new ones prefixed by >>):
drivers/perf/dwc_pcie_pmu.c: In function '__dwc_pcie_pmu_probe':
>> drivers/perf/dwc_pcie_pmu.c:507:24: error: implicit declaration of function 'pci_find_vsec_capability'; did you mean 'pci_find_ext_capability'? [-Werror=implicit-function-declaration]
507 | vsec = pci_find_vsec_capability(pdev, PCI_VENDOR_ID_ALIBABA,
| ^~~~~~~~~~~~~~~~~~~~~~~~
| pci_find_ext_capability
cc1: some warnings being treated as errors
vim +507 drivers/perf/dwc_pcie_pmu.c
487
488 static int __dwc_pcie_pmu_probe(struct dwc_pcie_pmu_priv *priv)
489 {
490 struct pci_dev *pdev = NULL;
491 struct dwc_pcie_pmu *pcie_pmu;
492 char *name;
493 u32 bdf;
494 int ret;
495
496 INIT_LIST_HEAD(&priv->pmu_nodes);
497
498 /* Match the rootport with VSEC_RAS_DES_ID, and register a PMU for it */
499 for_each_pci_dev(pdev) {
500 u16 vsec;
501 u32 val;
502
503 if (!(pci_is_pcie(pdev) &&
504 pci_pcie_type(pdev) == PCI_EXP_TYPE_ROOT_PORT))
505 continue;
506
> 507 vsec = pci_find_vsec_capability(pdev, PCI_VENDOR_ID_ALIBABA,
508 DWC_PCIE_VSEC_RAS_DES_ID);
509 if (!vsec)
510 continue;
511
512 pci_read_config_dword(pdev, vsec + PCI_VNDR_HEADER, &val);
513 if (PCI_VNDR_HEADER_REV(val) != 0x04 ||
514 PCI_VNDR_HEADER_LEN(val) != 0x100)
515 continue;
516 pci_dbg(pdev,
517 "Detected PCIe Vendor-Specific Extended Capability RAS DES\n");
518
519 bdf = PCI_DEVID(pdev->bus->number, pdev->devfn);
520 name = devm_kasprintf(priv->dev, GFP_KERNEL, "dwc_rootport_%x",
521 bdf);
522 if (!name)
523 return -ENOMEM;
524
525 /* All checks passed, go go go */
526 pcie_pmu = devm_kzalloc(&pdev->dev, sizeof(*pcie_pmu), GFP_KERNEL);
527 if (!pcie_pmu) {
528 pci_dev_put(pdev);
529 return -ENOMEM;
530 }
531
532 pcie_pmu->pdev = pdev;
533 pcie_pmu->ras_des = vsec;
534 pcie_pmu->nr_lanes = pcie_get_width_cap(pdev);
535 pcie_pmu->pmu = (struct pmu){
536 .module = THIS_MODULE,
537 .attr_groups = dwc_pcie_attr_groups,
538 .capabilities = PERF_PMU_CAP_NO_EXCLUDE,
539 .task_ctx_nr = perf_invalid_context,
540 .event_init = dwc_pcie_pmu_event_init,
541 .add = dwc_pcie_pmu_event_add,
542 .del = dwc_pcie_pmu_event_del,
543 .start = dwc_pcie_pmu_event_start,
544 .stop = dwc_pcie_pmu_event_stop,
545 .read = dwc_pcie_pmu_event_update,
546 };
547
548 /* Add this instance to the list used by the offline callback */
549 ret = cpuhp_state_add_instance(dwc_pcie_pmu_hp_state,
550 &pcie_pmu->cpuhp_node);
551 if (ret) {
552 pci_err(pcie_pmu->pdev,
553 "Error %d registering hotplug @%x\n", ret, bdf);
554 return ret;
555 }
556 ret = perf_pmu_register(&pcie_pmu->pmu, name, -1);
557 if (ret) {
558 pci_err(pcie_pmu->pdev,
559 "Error %d registering PMU @%x\n", ret, bdf);
560 cpuhp_state_remove_instance_nocalls(
561 dwc_pcie_pmu_hp_state, &pcie_pmu->cpuhp_node);
562 return ret;
563 }
564
565 /* Add registered PMUs and unregister them when this driver remove */
566 list_add(&pcie_pmu->pmu_node, &priv->pmu_nodes);
567 }
568
569 return 0;
570 }
571
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests
View attachment "config" of type "text/plain" (248577 bytes)
Powered by blists - more mailing lists