* [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).