Re: [PATCH v8 16/16] CXL/PCI: Disable CXL protocol errors during CXL Port cleanup

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

 



Hi Terry,

kernel test robot noticed the following build warnings:

[auto build test WARNING on aae0594a7053c60b82621136257c8b648c67b512]

url:    https://github.com/intel-lab-lkp/linux/commits/Terry-Bowman/PCI-CXL-Introduce-PCIe-helper-function-pcie_is_cxl/20250327-095738
base:   aae0594a7053c60b82621136257c8b648c67b512
patch link:    https://lore.kernel.org/r/20250327014717.2988633-17-terry.bowman%40amd.com
patch subject: [PATCH v8 16/16] CXL/PCI: Disable CXL protocol errors during CXL Port cleanup
config: csky-randconfig-r122-20250327 (https://download.01.org/0day-ci/archive/20250328/202503280816.M7DZmSDT-lkp@xxxxxxxxx/config)
compiler: csky-linux-gcc (GCC) 12.4.0
reproduce: (https://download.01.org/0day-ci/archive/20250328/202503280816.M7DZmSDT-lkp@xxxxxxxxx/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@xxxxxxxxx>
| Closes: https://lore.kernel.org/oe-kbuild-all/202503280816.M7DZmSDT-lkp@xxxxxxxxx/

sparse warnings: (new ones prefixed by >>)
   drivers/cxl/port.c:68:33: sparse: sparse: symbol 'cxl_ep_error_handlers' was not declared. Should it be static?
>> drivers/cxl/port.c:104:6: sparse: sparse: symbol 'cxl_disable_prot_errors' was not declared. Should it be static?

vim +/cxl_disable_prot_errors +104 drivers/cxl/port.c

    67	
  > 68	const struct cxl_error_handlers cxl_ep_error_handlers = {
    69		.error_detected = cxl_error_detected,
    70		.cor_error_detected = cxl_cor_error_detected,
    71	};
    72	
    73	static void cxl_assign_error_handlers(struct device *_dev,
    74					      const struct cxl_error_handlers *handlers)
    75	{
    76		struct device *dev __free(put_device) = get_device(_dev);
    77		struct cxl_driver *pdrv;
    78	
    79		if (!dev)
    80			return;
    81	
    82		pdrv = to_cxl_drv(dev->driver);
    83		pdrv->err_handler = handlers;
    84	}
    85	
    86	void cxl_enable_prot_errors(struct device *dev)
    87	{
    88		struct pci_dev *pdev = to_pci_dev(dev);
    89		struct device *pci_dev __free(put_device) = get_device(&pdev->dev);
    90	
    91		if (!pci_dev)
    92			return;
    93	
    94		if (!pdev->aer_cap) {
    95			pdev->aer_cap = pci_find_ext_capability(pdev, PCI_EXT_CAP_ID_ERR);
    96			if (!pdev->aer_cap)
    97				return;
    98		}
    99	
   100		pci_aer_unmask_internal_errors(pdev);
   101	}
   102	EXPORT_SYMBOL_NS_GPL(cxl_enable_prot_errors, "CXL");
   103	
 > 104	void cxl_disable_prot_errors(void *_dev)
   105	{
   106		struct device *dev = _dev;
   107		struct pci_dev *pdev = to_pci_dev(dev);
   108		struct device *pci_dev __free(put_device) = get_device(&pdev->dev);
   109	
   110		if (!pci_dev || !pdev->aer_cap)
   111			return;
   112	
   113		pci_aer_mask_internal_errors(pdev);
   114	}
   115	EXPORT_SYMBOL_NS_GPL(cxl_disable_prot_errors, "CXL");
   116	

-- 
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki




[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