Hi Matthew,

Thank you for the patch! Yet something to improve:

[auto build test ERROR on drm-tip/drm-tip]
[also build test ERROR on v5.18 next-20220525]
[cannot apply to drm-intel/for-linux-next drm/drm-next]
[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/intel-lab-lkp/linux/commits/Matthew-Auld/small-BAR-uapi-bits/20220526-024641
base:   git://anongit.freedesktop.org/drm/drm-tip drm-tip
config: i386-randconfig-a004 
(https://download.01.org/0day-ci/archive/20220526/202205260728.itopg4qx-...@intel.com/config)
compiler: clang version 15.0.0 (https://github.com/llvm/llvm-project 
d52a6e75b0c402c7f3b42a2b1b2873f151220947)
reproduce (this is a W=1 build):
        wget 
https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O 
~/bin/make.cross
        chmod +x ~/bin/make.cross
        # 
https://github.com/intel-lab-lkp/linux/commit/fdc3574e30bb0fdfdc9569fa42d369b1fae41e9e
        git remote add linux-review https://github.com/intel-lab-lkp/linux
        git fetch --no-tags linux-review 
Matthew-Auld/small-BAR-uapi-bits/20220526-024641
        git checkout fdc3574e30bb0fdfdc9569fa42d369b1fae41e9e
        # save the config file
        mkdir build_dir && cp config build_dir/.config
        COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross W=1 
O=build_dir ARCH=i386 SHELL=/bin/bash

If you fix the issue, kindly add following tag where applicable
Reported-by: kernel test robot <l...@intel.com>

All errors (new ones prefixed by >>):

>> drivers/gpu/drm/i915/gem/i915_gem_execbuffer.c:3429:6: error: assigning to 
>> 'int' from incompatible type 'void'
           err = eb_capture_stage(&eb);
               ^ ~~~~~~~~~~~~~~~~~~~~~
   1 error generated.


vim +3429 drivers/gpu/drm/i915/gem/i915_gem_execbuffer.c

  3384  
  3385          if (args->flags & I915_EXEC_FENCE_OUT) {
  3386                  out_fence_fd = get_unused_fd_flags(O_CLOEXEC);
  3387                  if (out_fence_fd < 0) {
  3388                          err = out_fence_fd;
  3389                          goto err_in_fence;
  3390                  }
  3391          }
  3392  
  3393          err = eb_create(&eb);
  3394          if (err)
  3395                  goto err_out_fence;
  3396  
  3397          GEM_BUG_ON(!eb.lut_size);
  3398  
  3399          err = eb_select_context(&eb);
  3400          if (unlikely(err))
  3401                  goto err_destroy;
  3402  
  3403          err = eb_select_engine(&eb);
  3404          if (unlikely(err))
  3405                  goto err_context;
  3406  
  3407          err = eb_lookup_vmas(&eb);
  3408          if (err) {
  3409                  eb_release_vmas(&eb, true);
  3410                  goto err_engine;
  3411          }
  3412  
  3413          i915_gem_ww_ctx_init(&eb.ww, true);
  3414  
  3415          err = eb_relocate_parse(&eb);
  3416          if (err) {
  3417                  /*
  3418                   * If the user expects the execobject.offset and
  3419                   * reloc.presumed_offset to be an exact match,
  3420                   * as for using NO_RELOC, then we cannot update
  3421                   * the execobject.offset until we have completed
  3422                   * relocation.
  3423                   */
  3424                  args->flags &= ~__EXEC_HAS_RELOC;
  3425                  goto err_vma;
  3426          }
  3427  
  3428          ww_acquire_done(&eb.ww.ctx);
> 3429          err = eb_capture_stage(&eb);
  3430          if (err)
  3431                  goto err_vma;
  3432  
  3433          out_fence = eb_requests_create(&eb, in_fence, out_fence_fd);
  3434          if (IS_ERR(out_fence)) {
  3435                  err = PTR_ERR(out_fence);
  3436                  out_fence = NULL;
  3437                  if (eb.requests[0])
  3438                          goto err_request;
  3439                  else
  3440                          goto err_vma;
  3441          }
  3442  
  3443          err = eb_submit(&eb);
  3444  
  3445  err_request:
  3446          eb_requests_get(&eb);
  3447          err = eb_requests_add(&eb, err);
  3448  
  3449          if (eb.fences)
  3450                  signal_fence_array(&eb, eb.composite_fence ?
  3451                                     eb.composite_fence :
  3452                                     &eb.requests[0]->fence);
  3453  
  3454          if (out_fence) {
  3455                  if (err == 0) {
  3456                          fd_install(out_fence_fd, out_fence->file);
  3457                          args->rsvd2 &= GENMASK_ULL(31, 0); /* keep 
in-fence */
  3458                          args->rsvd2 |= (u64)out_fence_fd << 32;
  3459                          out_fence_fd = -1;
  3460                  } else {
  3461                          fput(out_fence->file);
  3462                  }
  3463          }
  3464  
  3465          if (unlikely(eb.gem_context->syncobj)) {
  3466                  drm_syncobj_replace_fence(eb.gem_context->syncobj,
  3467                                            eb.composite_fence ?
  3468                                            eb.composite_fence :
  3469                                            &eb.requests[0]->fence);
  3470          }
  3471  
  3472          if (!out_fence && eb.composite_fence)
  3473                  dma_fence_put(eb.composite_fence);
  3474  
  3475          eb_requests_put(&eb);
  3476  
  3477  err_vma:
  3478          eb_release_vmas(&eb, true);
  3479          WARN_ON(err == -EDEADLK);
  3480          i915_gem_ww_ctx_fini(&eb.ww);
  3481  
  3482          if (eb.batch_pool)
  3483                  intel_gt_buffer_pool_put(eb.batch_pool);
  3484  err_engine:
  3485          eb_put_engine(&eb);
  3486  err_context:
  3487          i915_gem_context_put(eb.gem_context);
  3488  err_destroy:
  3489          eb_destroy(&eb);
  3490  err_out_fence:
  3491          if (out_fence_fd != -1)
  3492                  put_unused_fd(out_fence_fd);
  3493  err_in_fence:
  3494          dma_fence_put(in_fence);
  3495  err_ext:
  3496          put_fence_array(eb.fences, eb.num_fences);
  3497          return err;
  3498  }
  3499  

-- 
0-DAY CI Kernel Test Service
https://01.org/lkp

Reply via email to