oe-kbuild.lists.linux.dev archive mirror
 help / color / mirror / Atom feed
* [vivek-drm-tip:virtgpu_import_rfc 9/9] drivers/dma-buf/udmabuf.c:361 handle_pcidev_pages() error: uninitialized symbol 'ret'.
@ 2024-04-01 14:41 kernel test robot
  0 siblings, 0 replies; only message in thread
From: kernel test robot @ 2024-04-01 14:41 UTC (permalink / raw)
  To: oe-kbuild; +Cc: lkp, Dan Carpenter

BCC: lkp@intel.com
CC: oe-kbuild-all@lists.linux.dev
TO: Vivek Kasireddy <vivek.kasireddy@intel.com>

tree:   https://gitlab.freedesktop.org/Vivek/drm-tip.git virtgpu_import_rfc
head:   2347bf8ba6d850818b830aa54bb75d4b892fb6a8
commit: 2347bf8ba6d850818b830aa54bb75d4b892fb6a8 [9/9] udmabuf: Implement UDMABUF_CREATE_LIST_FOR_PCIDEV ioctl
:::::: branch date: 4 days ago
:::::: commit date: 4 days ago
config: i386-randconfig-141-20240401 (https://download.01.org/0day-ci/archive/20240401/202404012251.1l3ZjNuu-lkp@intel.com/config)
compiler: clang version 17.0.6 (https://github.com/llvm/llvm-project 6009708b4367171ccdbf4b5905cb6a803753fe18)

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>
| Reported-by: Dan Carpenter <error27@gmail.com>
| Closes: https://lore.kernel.org/r/202404012251.1l3ZjNuu-lkp@intel.com/

smatch warnings:
drivers/dma-buf/udmabuf.c:361 handle_pcidev_pages() error: uninitialized symbol 'ret'.

vim +/ret +361 drivers/dma-buf/udmabuf.c

ead26fccadd43c Vivek Kasireddy 2023-06-20  299  
2347bf8ba6d850 Vivek Kasireddy 2024-03-26  300  static int handle_pcidev_pages(struct udmabuf *ubuf,
c1bbed66899726 Gurchetan Singh 2019-12-02  301  			       struct udmabuf_create_list *head,
c1bbed66899726 Gurchetan Singh 2019-12-02  302  			       struct udmabuf_create_item *list)
2347bf8ba6d850 Vivek Kasireddy 2024-03-26  303  {
2347bf8ba6d850 Vivek Kasireddy 2024-03-26  304  	struct pci_dev *pdev = NULL;
2347bf8ba6d850 Vivek Kasireddy 2024-03-26  305  	resource_size_t bar_size;
2347bf8ba6d850 Vivek Kasireddy 2024-03-26  306  	pgoff_t pgbuf = 0;
2347bf8ba6d850 Vivek Kasireddy 2024-03-26  307  	struct page *page;
2347bf8ba6d850 Vivek Kasireddy 2024-03-26  308  	int i, ret;
2347bf8ba6d850 Vivek Kasireddy 2024-03-26  309  	size_t size;
2347bf8ba6d850 Vivek Kasireddy 2024-03-26  310  	void *addr;
2347bf8ba6d850 Vivek Kasireddy 2024-03-26  311  
2347bf8ba6d850 Vivek Kasireddy 2024-03-26  312  	for (i = 0; i < head->count; i++) {
2347bf8ba6d850 Vivek Kasireddy 2024-03-26  313  		if (!ubuf->pdev) {
2347bf8ba6d850 Vivek Kasireddy 2024-03-26  314  			pdev = pci_get_domain_bus_and_slot(0,
2347bf8ba6d850 Vivek Kasireddy 2024-03-26  315  						PCI_BUS_NUM(list[i].devid),
2347bf8ba6d850 Vivek Kasireddy 2024-03-26  316  						list[i].devid & 0xff);
2347bf8ba6d850 Vivek Kasireddy 2024-03-26  317  			if (!pdev) {
2347bf8ba6d850 Vivek Kasireddy 2024-03-26  318  				ret = -ENODEV;
2347bf8ba6d850 Vivek Kasireddy 2024-03-26  319  				goto err;
2347bf8ba6d850 Vivek Kasireddy 2024-03-26  320  			}
2347bf8ba6d850 Vivek Kasireddy 2024-03-26  321  
2347bf8ba6d850 Vivek Kasireddy 2024-03-26  322  			ubuf->pdev = pdev;
2347bf8ba6d850 Vivek Kasireddy 2024-03-26  323  		}
2347bf8ba6d850 Vivek Kasireddy 2024-03-26  324  
2347bf8ba6d850 Vivek Kasireddy 2024-03-26  325  		bar_size = pci_resource_len(pdev, list[i].bar);
2347bf8ba6d850 Vivek Kasireddy 2024-03-26  326  		if (list[i].offset > bar_size ||
2347bf8ba6d850 Vivek Kasireddy 2024-03-26  327  		    list[i].offset + list[i].size > bar_size) {
2347bf8ba6d850 Vivek Kasireddy 2024-03-26  328  			ret = -EINVAL;
2347bf8ba6d850 Vivek Kasireddy 2024-03-26  329  			goto err;
2347bf8ba6d850 Vivek Kasireddy 2024-03-26  330  		}
2347bf8ba6d850 Vivek Kasireddy 2024-03-26  331  
2347bf8ba6d850 Vivek Kasireddy 2024-03-26  332  		ret = pci_p2pdma_add_resource(pdev,
2347bf8ba6d850 Vivek Kasireddy 2024-03-26  333  					      list[i].bar,
2347bf8ba6d850 Vivek Kasireddy 2024-03-26  334  					      list[i].size,
2347bf8ba6d850 Vivek Kasireddy 2024-03-26  335  					      list[i].offset);
2347bf8ba6d850 Vivek Kasireddy 2024-03-26  336  		if (ret)
2347bf8ba6d850 Vivek Kasireddy 2024-03-26  337  			goto err;
2347bf8ba6d850 Vivek Kasireddy 2024-03-26  338  
2347bf8ba6d850 Vivek Kasireddy 2024-03-26  339  		addr = pci_alloc_p2pmem(pdev, list[i].size);
2347bf8ba6d850 Vivek Kasireddy 2024-03-26  340  		if (!addr) {
2347bf8ba6d850 Vivek Kasireddy 2024-03-26  341  			ret = -EINVAL;
2347bf8ba6d850 Vivek Kasireddy 2024-03-26  342  			goto err;
2347bf8ba6d850 Vivek Kasireddy 2024-03-26  343  		}
2347bf8ba6d850 Vivek Kasireddy 2024-03-26  344  
2347bf8ba6d850 Vivek Kasireddy 2024-03-26  345  		size = 0;
2347bf8ba6d850 Vivek Kasireddy 2024-03-26  346  		while (size < list[i].size) {
2347bf8ba6d850 Vivek Kasireddy 2024-03-26  347  			page = virt_to_page((unsigned long)addr + size);
2347bf8ba6d850 Vivek Kasireddy 2024-03-26  348  			ubuf->pages[pgbuf++] = page;
2347bf8ba6d850 Vivek Kasireddy 2024-03-26  349  
2347bf8ba6d850 Vivek Kasireddy 2024-03-26  350  			size += PAGE_SIZE;
2347bf8ba6d850 Vivek Kasireddy 2024-03-26  351  		}
2347bf8ba6d850 Vivek Kasireddy 2024-03-26  352  	}
2347bf8ba6d850 Vivek Kasireddy 2024-03-26  353  
2347bf8ba6d850 Vivek Kasireddy 2024-03-26  354  err:
2347bf8ba6d850 Vivek Kasireddy 2024-03-26  355  	while (pgbuf > 0 && ubuf->pages[--pgbuf])
2347bf8ba6d850 Vivek Kasireddy 2024-03-26  356  		pci_free_p2pmem(pdev,
2347bf8ba6d850 Vivek Kasireddy 2024-03-26  357  				page_to_virt(ubuf->pages[pgbuf]),
2347bf8ba6d850 Vivek Kasireddy 2024-03-26  358  				PAGE_SIZE);
2347bf8ba6d850 Vivek Kasireddy 2024-03-26  359  	if (pdev)
2347bf8ba6d850 Vivek Kasireddy 2024-03-26  360  		pci_dev_put(pdev);
2347bf8ba6d850 Vivek Kasireddy 2024-03-26 @361  	return ret;
2347bf8ba6d850 Vivek Kasireddy 2024-03-26  362  }
2347bf8ba6d850 Vivek Kasireddy 2024-03-26  363  

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

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2024-04-01 14:42 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2024-04-01 14:41 [vivek-drm-tip:virtgpu_import_rfc 9/9] drivers/dma-buf/udmabuf.c:361 handle_pcidev_pages() error: uninitialized symbol 'ret' kernel test robot

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).