Re: [PATCH 4/4] PCI: Enable 10-Bit tag support for PCIe RP devices

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

 



Hi Dongdong,

Thank you for the patch! Yet something to improve:

[auto build test ERROR on pci/next]
[also build test ERROR on v5.12-rc5 next-20210401]
[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]

url:    https://github.com/0day-ci/linux/commits/Dongdong-Liu/PCI-Enable-10-Bit-tag-support-for-PCIe-devices/20210403-171726
base:   https://git.kernel.org/pub/scm/linux/kernel/git/helgaas/pci.git next
config: i386-randconfig-m021-20210403 (attached as .config)
compiler: gcc-9 (Debian 9.3.0-22) 9.3.0
reproduce (this is a W=1 build):
        # https://github.com/0day-ci/linux/commit/c1497e514c78375b8c9e9e074e5b84c62eaef20f
        git remote add linux-review https://github.com/0day-ci/linux
        git fetch --no-tags linux-review Dongdong-Liu/PCI-Enable-10-Bit-tag-support-for-PCIe-devices/20210403-171726
        git checkout c1497e514c78375b8c9e9e074e5b84c62eaef20f
        # save the attached .config to linux build tree
        make W=1 ARCH=i386 

If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@xxxxxxxxx>

All errors (new ones prefixed by >>):

>> drivers/pci/probe.c:2096:6: error: redefinition of 'pci_configure_rp_10bit_tag'
    2096 | void pci_configure_rp_10bit_tag(struct pci_dev *dev)
         |      ^~~~~~~~~~~~~~~~~~~~~~~~~~
   In file included from drivers/pci/probe.c:22:
   drivers/pci/pci.h:468:20: note: previous definition of 'pci_configure_rp_10bit_tag' was here
     468 | static inline void pci_configure_rp_10bit_tag(struct pci_dev *dev) {}
         |                    ^~~~~~~~~~~~~~~~~~~~~~~~~~


vim +/pci_configure_rp_10bit_tag +2096 drivers/pci/probe.c

  2095	
> 2096	void pci_configure_rp_10bit_tag(struct pci_dev *dev)
  2097	{
  2098		u8 support = 1;
  2099		u32 cap;
  2100		int ret;
  2101	
  2102		if (!pci_is_pcie(dev))
  2103			return;
  2104	
  2105		if (pci_pcie_type(dev) != PCI_EXP_TYPE_ROOT_PORT)
  2106			return;
  2107	
  2108		if (dev->subordinate == NULL)
  2109			return;
  2110	
  2111		pci_10bit_tag_comp_support(dev, &support);
  2112		if (!support)
  2113			return;
  2114	
  2115		/*
  2116		 * PCIe spec 5.0r1.0 section 2.2.6.2 implementation note
  2117		 * In configurations where a Requester with 10-Bit Tag Requester capability
  2118		 * needs to target multiple Completers, one needs to ensure that the
  2119		 * Requester sends 10-Bit Tag Requests only to Completers that have 10-Bit
  2120		 * Tag Completer capability. So we enable 10-Bit Tag Requester for root port
  2121		 * only when the devices under the root port support 10-Bit Tag Completer.
  2122		 */
  2123		pci_walk_bus(dev->subordinate, pci_10bit_tag_comp_support, &support);
  2124		if (!support)
  2125			return;
  2126	
  2127		ret = pcie_capability_read_dword(dev, PCI_EXP_DEVCAP2, &cap);
  2128		if (ret)
  2129			return;
  2130	
  2131		if (!(cap & PCI_EXP_DEVCAP2_10BIT_TAG_REQ))
  2132			return;
  2133	
  2134		pci_info(dev, "enabling 10-Bit Tag Requester\n");
  2135		pcie_capability_set_word(dev, PCI_EXP_DEVCTL2,
  2136					 PCI_EXP_DEVCTL2_10BIT_TAG_REQ_EN);
  2137	}
  2138	

---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@xxxxxxxxxxxx

Attachment: .config.gz
Description: application/gzip


[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