[radeon-alex:amd-staging-dkms-4.13 3272/3830] drivers/staging//vboxvideo/vbox_ttm.c:190:9: error: incompatible type for argument 2 of 'ttm_bo_move_memcpy'

He, Roger Hongbo.He at amd.com
Thu Feb 22 04:49:25 UTC 2018


Hi Kevin:

Please help to check if the below patch is merged into staging branch?
If not, please cherry pick that to fix build error. Thanks!

commit 3f3a7c8259312084291859d3b623db4317365a07
Author: Christian König <ckoenig.leichtzumerken at gmail.com>
Date:   Fri Nov 24 11:32:59 2017 +0100

    staging: vboxvideo: adapt to new TTM interface

    Fixes interface changes done in the following commits:
    drm/ttm: add operation ctx to ttm_bo_validate v2
    drm/ttm: add context to driver move callback as well


-----Original Message-----
From: kbuild test robot [mailto:fengguang.wu at intel.com] 
Sent: Friday, February 16, 2018 7:01 AM
To: He, Roger <Hongbo.He at amd.com>
Cc: kbuild-all at 01.org; dri-devel at lists.freedesktop.org; Ma, Le <Le.Ma at amd.com>; Koenig, Christian <Christian.Koenig at amd.com>
Subject: [radeon-alex:amd-staging-dkms-4.13 3272/3830] drivers/staging//vboxvideo/vbox_ttm.c:190:9: error: incompatible type for argument 2 of 'ttm_bo_move_memcpy'

tree:   git://people.freedesktop.org/~agd5f/linux.git amd-staging-dkms-4.13
head:   7bde112fab15c0a28c1d056959167cd4393bf538
commit: d08b4d092e33c348cb01367e02e5dd2dd8104a46 [3272/3830] drm/ttm: use an ttm operation ctx for ttm_bo_move_xxx
config: i386-randconfig-a0-201806 (attached as .config)
compiler: gcc-4.9 (Debian 4.9.4-2) 4.9.4
reproduce:
        git checkout d08b4d092e33c348cb01367e02e5dd2dd8104a46
        # save the attached .config to linux build tree
        make ARCH=i386 

All error/warnings (new ones prefixed by >>):

   drivers/staging//vboxvideo/vbox_ttm.c: In function 'vbox_bo_move':
>> drivers/staging//vboxvideo/vbox_ttm.c:190:9: error: incompatible type for argument 2 of 'ttm_bo_move_memcpy'
     return ttm_bo_move_memcpy(bo, interruptible, no_wait_gpu, new_mem);
            ^
   In file included from drivers/staging//vboxvideo/vbox_drv.h:44:0,
                    from drivers/staging//vboxvideo/vbox_ttm.c:30:
   include/drm/ttm/ttm_bo_driver.h:1022:5: note: expected 'struct ttm_operation_ctx *' but argument is of type 'bool'
    int ttm_bo_move_memcpy(struct ttm_buffer_object *bo,
        ^
   drivers/staging//vboxvideo/vbox_ttm.c:190:9: error: incompatible type for argument 3 of 'ttm_bo_move_memcpy'
     return ttm_bo_move_memcpy(bo, interruptible, no_wait_gpu, new_mem);
            ^
   In file included from drivers/staging//vboxvideo/vbox_drv.h:44:0,
                    from drivers/staging//vboxvideo/vbox_ttm.c:30:
   include/drm/ttm/ttm_bo_driver.h:1022:5: note: expected 'struct ttm_mem_reg *' but argument is of type 'bool'
    int ttm_bo_move_memcpy(struct ttm_buffer_object *bo,
        ^
>> drivers/staging//vboxvideo/vbox_ttm.c:190:9: error: too many arguments to function 'ttm_bo_move_memcpy'
     return ttm_bo_move_memcpy(bo, interruptible, no_wait_gpu, new_mem);
            ^
   In file included from drivers/staging//vboxvideo/vbox_drv.h:44:0,
                    from drivers/staging//vboxvideo/vbox_ttm.c:30:
   include/drm/ttm/ttm_bo_driver.h:1022:5: note: declared here
    int ttm_bo_move_memcpy(struct ttm_buffer_object *bo,
        ^
   drivers/staging//vboxvideo/vbox_ttm.c: At top level:
   drivers/staging//vboxvideo/vbox_ttm.c:240:2: warning: initialization from incompatible pointer type
     .move = vbox_bo_move,
     ^
   drivers/staging//vboxvideo/vbox_ttm.c:240:2: warning: (near initialization for 'vbox_bo_driver.move')
   drivers/staging//vboxvideo/vbox_ttm.c: In function 'vbox_bo_pin':
   drivers/staging//vboxvideo/vbox_ttm.c:392:8: error: too many arguments to function 'ttm_bo_validate'
     ret = ttm_bo_validate(&bo->bo, &bo->placement, false, false);
           ^
   In file included from drivers/staging//vboxvideo/vbox_drv.h:43:0,
                    from drivers/staging//vboxvideo/vbox_ttm.c:30:
   include/drm/ttm/ttm_bo_api.h:339:5: note: declared here
    int ttm_bo_validate(struct ttm_buffer_object *bo,
        ^
   drivers/staging//vboxvideo/vbox_ttm.c: In function 'vbox_bo_unpin':
   drivers/staging//vboxvideo/vbox_ttm.c:419:8: error: too many arguments to function 'ttm_bo_validate'
     ret = ttm_bo_validate(&bo->bo, &bo->placement, false, false);
           ^
   In file included from drivers/staging//vboxvideo/vbox_drv.h:43:0,
                    from drivers/staging//vboxvideo/vbox_ttm.c:30:
   include/drm/ttm/ttm_bo_api.h:339:5: note: declared here
    int ttm_bo_validate(struct ttm_buffer_object *bo,
        ^
   drivers/staging//vboxvideo/vbox_ttm.c: In function 'vbox_bo_push_sysram':
   drivers/staging//vboxvideo/vbox_ttm.c:451:8: error: too many arguments to function 'ttm_bo_validate'
     ret = ttm_bo_validate(&bo->bo, &bo->placement, false, false);
           ^
   In file included from drivers/staging//vboxvideo/vbox_drv.h:43:0,
                    from drivers/staging//vboxvideo/vbox_ttm.c:30:
   include/drm/ttm/ttm_bo_api.h:339:5: note: declared here
    int ttm_bo_validate(struct ttm_buffer_object *bo,
        ^
   drivers/staging//vboxvideo/vbox_ttm.c: In function 'vbox_bo_move':
>> drivers/staging//vboxvideo/vbox_ttm.c:191:1: warning: control reaches end of non-void function [-Wreturn-type]
    }
    ^

vim +/ttm_bo_move_memcpy +190 drivers/staging//vboxvideo/vbox_ttm.c

dd55d44f4 Hans de Goede 2017-07-06  185  
dd55d44f4 Hans de Goede 2017-07-06  186  static int vbox_bo_move(struct ttm_buffer_object *bo,
dd55d44f4 Hans de Goede 2017-07-06  187  			bool evict, bool interruptible,
dd55d44f4 Hans de Goede 2017-07-06  188  			bool no_wait_gpu, struct ttm_mem_reg *new_mem)
dd55d44f4 Hans de Goede 2017-07-06  189  {
dd55d44f4 Hans de Goede 2017-07-06 @190  	return ttm_bo_move_memcpy(bo, interruptible, no_wait_gpu, new_mem);
dd55d44f4 Hans de Goede 2017-07-06 @191  }
dd55d44f4 Hans de Goede 2017-07-06  192  

:::::: The code at line 190 was first introduced by commit
:::::: dd55d44f408419278c00887bfcb2261d0caae350 staging: vboxvideo: Add vboxvideo to drivers/staging

:::::: TO: Hans de Goede <hdegoede at redhat.com>
:::::: CC: Greg Kroah-Hartman <gregkh at linuxfoundation.org>

---
0-DAY kernel test infrastructure                Open Source Technology Center
https://lists.01.org/pipermail/kbuild-all                   Intel Corporation


More information about the dri-devel mailing list