[PATCH 3/7] drm/vmwgfx: start to phase out ttm_exec
kernel test robot
lkp at intel.com
Sun Nov 17 07:12:53 UTC 2024
Hi Christian,
kernel test robot noticed the following build warnings:
[auto build test WARNING on drm-xe/drm-xe-next]
[also build test WARNING on drm/drm-next drm-exynos/exynos-drm-next linus/master drm-intel/for-linux-next drm-intel/for-linux-next-fixes drm-misc/drm-misc-next drm-tip/drm-tip v6.12-rc7 next-20241115]
[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/Christian-K-nig/drm-qxl-switch-to-using-drm_exec-v2/20241115-014610
base: https://gitlab.freedesktop.org/drm/xe/kernel.git drm-xe-next
patch link: https://lore.kernel.org/r/20241114153020.6209-4-christian.koenig%40amd.com
patch subject: [PATCH 3/7] drm/vmwgfx: start to phase out ttm_exec
config: x86_64-rhel-8.3 (https://download.01.org/0day-ci/archive/20241117/202411171454.yXzqqhti-lkp@intel.com/config)
compiler: gcc-12 (Debian 12.2.0-14) 12.2.0
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20241117/202411171454.yXzqqhti-lkp@intel.com/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 at intel.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202411171454.yXzqqhti-lkp@intel.com/
All warnings (new ones prefixed by >>):
>> drivers/gpu/drm/vmwgfx/vmwgfx_resource.c:521: warning: Function parameter or struct member 'bo' not described in 'vmw_resource_check_buffer'
>> drivers/gpu/drm/vmwgfx/vmwgfx_resource.c:521: warning: Excess function parameter 'val_buf' description in 'vmw_resource_check_buffer'
vim +521 drivers/gpu/drm/vmwgfx/vmwgfx_resource.c
c0951b797e7d0f Thomas Hellstrom 2012-11-20 503
c0951b797e7d0f Thomas Hellstrom 2012-11-20 504 /**
c0951b797e7d0f Thomas Hellstrom 2012-11-20 505 * vmw_resource_check_buffer - Check whether a backup buffer is needed
c0951b797e7d0f Thomas Hellstrom 2012-11-20 506 * for a resource and in that case, allocate
c0951b797e7d0f Thomas Hellstrom 2012-11-20 507 * one, reserve and validate it.
c0951b797e7d0f Thomas Hellstrom 2012-11-20 508 *
05436815fdb475 Tom Rix 2022-07-30 509 * @ticket: The ww acquire context to use, or NULL if trylocking.
c0951b797e7d0f Thomas Hellstrom 2012-11-20 510 * @res: The resource for which to allocate a backup buffer.
c0951b797e7d0f Thomas Hellstrom 2012-11-20 511 * @interruptible: Whether any sleeps during allocation should be
c0951b797e7d0f Thomas Hellstrom 2012-11-20 512 * performed while interruptible.
c0951b797e7d0f Thomas Hellstrom 2012-11-20 513 * @val_buf: On successful return contains data about the
c0951b797e7d0f Thomas Hellstrom 2012-11-20 514 * reserved and validated backup buffer.
c0951b797e7d0f Thomas Hellstrom 2012-11-20 515 */
ecff665f5e3f1c Maarten Lankhorst 2013-06-27 516 static int
19f976ab01a6bb Thomas Hellstrom 2018-06-19 517 vmw_resource_check_buffer(struct ww_acquire_ctx *ticket,
19f976ab01a6bb Thomas Hellstrom 2018-06-19 518 struct vmw_resource *res,
c0951b797e7d0f Thomas Hellstrom 2012-11-20 519 bool interruptible,
0b48fc98b52ea2 Christian König 2024-11-14 520 struct ttm_buffer_object **bo)
c0951b797e7d0f Thomas Hellstrom 2012-11-20 @521 {
19be5570107108 Christian König 2017-04-12 522 struct ttm_operation_ctx ctx = { true, false };
c0951b797e7d0f Thomas Hellstrom 2012-11-20 523 struct list_head val_list;
668b206601c5f5 Zack Rusin 2023-01-30 524 bool guest_memory_dirty = false;
c0951b797e7d0f Thomas Hellstrom 2012-11-20 525 int ret;
c0951b797e7d0f Thomas Hellstrom 2012-11-20 526
668b206601c5f5 Zack Rusin 2023-01-30 527 if (unlikely(!res->guest_memory_bo)) {
c0951b797e7d0f Thomas Hellstrom 2012-11-20 528 ret = vmw_resource_buf_alloc(res, interruptible);
c0951b797e7d0f Thomas Hellstrom 2012-11-20 529 if (unlikely(ret != 0))
c0951b797e7d0f Thomas Hellstrom 2012-11-20 530 return ret;
c0951b797e7d0f Thomas Hellstrom 2012-11-20 531 }
c0951b797e7d0f Thomas Hellstrom 2012-11-20 532
c0951b797e7d0f Thomas Hellstrom 2012-11-20 533 INIT_LIST_HEAD(&val_list);
668b206601c5f5 Zack Rusin 2023-01-30 534 ttm_bo_get(&res->guest_memory_bo->tbo);
0b48fc98b52ea2 Christian König 2024-11-14 535
0b48fc98b52ea2 Christian König 2024-11-14 536 *bo = &res->guest_memory_bo->tbo;
0b48fc98b52ea2 Christian König 2024-11-14 537 if (ticket)
0b48fc98b52ea2 Christian König 2024-11-14 538 ww_acquire_init(ticket, &reservation_ww_class);
0b48fc98b52ea2 Christian König 2024-11-14 539
0b48fc98b52ea2 Christian König 2024-11-14 540 ret = ttm_bo_reserve(*bo, interruptible, (ticket == NULL), ticket);
c0951b797e7d0f Thomas Hellstrom 2012-11-20 541 if (unlikely(ret != 0))
c0951b797e7d0f Thomas Hellstrom 2012-11-20 542 goto out_no_reserve;
c0951b797e7d0f Thomas Hellstrom 2012-11-20 543
668b206601c5f5 Zack Rusin 2023-01-30 544 if (res->func->needs_guest_memory && !vmw_resource_mob_attached(res))
c0951b797e7d0f Thomas Hellstrom 2012-11-20 545 return 0;
c0951b797e7d0f Thomas Hellstrom 2012-11-20 546
668b206601c5f5 Zack Rusin 2023-01-30 547 guest_memory_dirty = res->guest_memory_dirty;
668b206601c5f5 Zack Rusin 2023-01-30 548 vmw_bo_placement_set(res->guest_memory_bo, res->func->domain,
39985eea5a6dd1 Zack Rusin 2023-01-30 549 res->func->busy_domain);
668b206601c5f5 Zack Rusin 2023-01-30 550 ret = ttm_bo_validate(&res->guest_memory_bo->tbo,
668b206601c5f5 Zack Rusin 2023-01-30 551 &res->guest_memory_bo->placement,
19be5570107108 Christian König 2017-04-12 552 &ctx);
c0951b797e7d0f Thomas Hellstrom 2012-11-20 553
c0951b797e7d0f Thomas Hellstrom 2012-11-20 554 if (unlikely(ret != 0))
c0951b797e7d0f Thomas Hellstrom 2012-11-20 555 goto out_no_validate;
c0951b797e7d0f Thomas Hellstrom 2012-11-20 556
c0951b797e7d0f Thomas Hellstrom 2012-11-20 557 return 0;
c0951b797e7d0f Thomas Hellstrom 2012-11-20 558
c0951b797e7d0f Thomas Hellstrom 2012-11-20 559 out_no_validate:
0b48fc98b52ea2 Christian König 2024-11-14 560 dma_resv_unlock((*bo)->base.resv);
0b48fc98b52ea2 Christian König 2024-11-14 561 if (ticket)
0b48fc98b52ea2 Christian König 2024-11-14 562 ww_acquire_fini(ticket);
c0951b797e7d0f Thomas Hellstrom 2012-11-20 563 out_no_reserve:
0b48fc98b52ea2 Christian König 2024-11-14 564 ttm_bo_put(*bo);
668b206601c5f5 Zack Rusin 2023-01-30 565 if (guest_memory_dirty)
91398b413d0366 Zack Rusin 2023-09-28 566 vmw_user_bo_unref(&res->guest_memory_bo);
c0951b797e7d0f Thomas Hellstrom 2012-11-20 567
c0951b797e7d0f Thomas Hellstrom 2012-11-20 568 return ret;
c0951b797e7d0f Thomas Hellstrom 2012-11-20 569 }
c0951b797e7d0f Thomas Hellstrom 2012-11-20 570
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
More information about the dri-devel
mailing list