Hi Danilo,

Thank you for the patch! Perhaps something to improve:

[auto build test WARNING on 48075a66fca613477ac1969b576a93ef5db0164f]

url:    
https://github.com/intel-lab-lkp/linux/commits/Danilo-Krummrich/drm-execution-context-for-GEM-buffers/20230217-215101
base:   48075a66fca613477ac1969b576a93ef5db0164f
patch link:    
https://lore.kernel.org/r/20230217134422.14116-6-dakr%40redhat.com
patch subject: [PATCH drm-next v2 05/16] drm: manager to keep track of GPUs VA 
mappings
config: mips-allyesconfig 
(https://download.01.org/0day-ci/archive/20230218/202302180805.b0ab40v5-...@intel.com/config)
compiler: mips-linux-gcc (GCC) 12.1.0
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/00132cc92b6745cfd51c0d5df4c246a848f2ceaa
        git remote add linux-review https://github.com/intel-lab-lkp/linux
        git fetch --no-tags linux-review 
Danilo-Krummrich/drm-execution-context-for-GEM-buffers/20230217-215101
        git checkout 00132cc92b6745cfd51c0d5df4c246a848f2ceaa
        # save the config file
        mkdir build_dir && cp config build_dir/.config
        COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-12.1.0 make.cross W=1 
O=build_dir ARCH=mips olddefconfig
        COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-12.1.0 make.cross W=1 
O=build_dir ARCH=mips SHELL=/bin/bash drivers/gpu/drm/

If you fix the issue, kindly add following tag where applicable
| Reported-by: kernel test robot <l...@intel.com>
| Link: 
https://lore.kernel.org/oe-kbuild-all/202302180805.b0ab40v5-...@intel.com/

All warnings (new ones prefixed by >>):

>> drivers/gpu/drm/drm_gpuva_mgr.c:1383:5: warning: no previous prototype for 
>> 'drm_gpuva_sm_step' [-Wmissing-prototypes]
    1383 | int drm_gpuva_sm_step(struct drm_gpuva_op *__op, void *priv)
         |     ^~~~~~~~~~~~~~~~~
--
>> drivers/gpu/drm/drm_gpuva_mgr.c:529: warning: expecting prototype for 
>> drm_gpuva_remove_iter(). Prototype was for drm_gpuva_iter_remove() instead
   drivers/gpu/drm/drm_gpuva_mgr.c:549: warning: Excess function parameter 
'addr' description in 'drm_gpuva_insert'
   drivers/gpu/drm/drm_gpuva_mgr.c:549: warning: Excess function parameter 
'range' description in 'drm_gpuva_insert'
   drivers/gpu/drm/drm_gpuva_mgr.c:765: warning: Excess function parameter 
'addr' description in 'drm_gpuva_region_insert'
   drivers/gpu/drm/drm_gpuva_mgr.c:765: warning: Excess function parameter 
'range' description in 'drm_gpuva_region_insert'
   drivers/gpu/drm/drm_gpuva_mgr.c:1345: warning: Excess function parameter 
'ops' description in 'drm_gpuva_sm_unmap'
   drivers/gpu/drm/drm_gpuva_mgr.c:1589: warning: Function parameter or member 
'addr' not described in 'drm_gpuva_prefetch_ops_create'
   drivers/gpu/drm/drm_gpuva_mgr.c:1589: warning: Function parameter or member 
'range' not described in 'drm_gpuva_prefetch_ops_create'
   drivers/gpu/drm/drm_gpuva_mgr.c:1589: warning: Excess function parameter 
'req_addr' description in 'drm_gpuva_prefetch_ops_create'
   drivers/gpu/drm/drm_gpuva_mgr.c:1589: warning: Excess function parameter 
'req_range' description in 'drm_gpuva_prefetch_ops_create'


vim +/drm_gpuva_sm_step +1383 drivers/gpu/drm/drm_gpuva_mgr.c

  1382  
> 1383  int drm_gpuva_sm_step(struct drm_gpuva_op *__op, void *priv)
  1384  {
  1385          struct {
  1386                  struct drm_gpuva_manager *mgr;
  1387                  struct drm_gpuva_ops *ops;
  1388          } *args = priv;
  1389          struct drm_gpuva_manager *mgr = args->mgr;
  1390          struct drm_gpuva_ops *ops = args->ops;
  1391          struct drm_gpuva_op *op;
  1392  
  1393          op = gpuva_op_alloc(mgr);
  1394          if (unlikely(!op))
  1395                  goto err;
  1396  
  1397          memcpy(op, __op, sizeof(*op));
  1398  
  1399          if (op->op == DRM_GPUVA_OP_REMAP) {
  1400                  struct drm_gpuva_op_remap *__r = &__op->remap;
  1401                  struct drm_gpuva_op_remap *r = &op->remap;
  1402  
  1403                  r->unmap = kmemdup(__r->unmap, sizeof(*r->unmap),
  1404                                     GFP_KERNEL);
  1405                  if (unlikely(!r->unmap))
  1406                          goto err_free_op;
  1407  
  1408                  if (__r->prev) {
  1409                          r->prev = kmemdup(__r->prev, sizeof(*r->prev),
  1410                                            GFP_KERNEL);
  1411                          if (unlikely(!r->prev))
  1412                                  goto err_free_unmap;
  1413                  }
  1414  
  1415                  if (__r->next) {
  1416                          r->next = kmemdup(__r->next, sizeof(*r->next),
  1417                                            GFP_KERNEL);
  1418                          if (unlikely(!r->next))
  1419                                  goto err_free_prev;
  1420                  }
  1421          }
  1422  
  1423          list_add_tail(&op->entry, &ops->list);
  1424  
  1425          return 0;
  1426  
  1427  err_free_unmap:
  1428          kfree(op->remap.unmap);
  1429  err_free_prev:
  1430          kfree(op->remap.prev);
  1431  err_free_op:
  1432          gpuva_op_free(mgr, op);
  1433  err:
  1434          return -ENOMEM;
  1435  }
  1436  

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

Reply via email to