lkml.org 
[lkml]   [2023]   [Feb]   [17]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: [PATCH drm-next v2 05/16] drm: manager to keep track of GPUs VA mappings
    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-lkp@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 <lkp@intel.com>
    | Link: https://lore.kernel.org/oe-kbuild-all/202302180805.b0ab40V5-lkp@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

    \
     
     \ /
      Last update: 2023-03-27 00:27    [W:4.111 / U:0.952 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site