Hi Jiawei, Thank you for the patch! Yet something to improve: [auto build test ERROR on drm/drm-next] [also build test ERROR on drm-intel/for-linux-next drm-exynos/exynos-drm-next tegra-drm/drm/tegra/for-next v5.17-rc5 next-20220217] [cannot apply to drm-tip/drm-tip] [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/0day-ci/linux/commits/Jiawei-Gu/drm-sched-Add-device-pointer-to-drm_gpu_scheduler/20220221-175818 base: git://anongit.freedesktop.org/drm/drm drm-next config: ia64-allmodconfig (https://download.01.org/0day-ci/archive/20220221/202202212330.nxcvFWEe-lkp@xxxxxxxxx/config) compiler: ia64-linux-gcc (GCC) 11.2.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/0day-ci/linux/commit/9fdafca855faca0a3b8f213f024985c4112fa0bb git remote add linux-review https://github.com/0day-ci/linux git fetch --no-tags linux-review Jiawei-Gu/drm-sched-Add-device-pointer-to-drm_gpu_scheduler/20220221-175818 git checkout 9fdafca855faca0a3b8f213f024985c4112fa0bb # save the config file to linux build tree mkdir build_dir COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-11.2.0 make.cross O=build_dir ARCH=ia64 SHELL=/bin/bash drivers/gpu/drm/msm/ drivers/gpu/drm/v3d/ If you fix the issue, kindly add following tag as appropriate Reported-by: kernel test robot <lkp@xxxxxxxxx> All errors (new ones prefixed by >>): drivers/gpu/drm/msm/msm_ringbuffer.c: In function 'msm_ringbuffer_new': >> drivers/gpu/drm/msm/msm_ringbuffer.c:90:15: error: too few arguments to function 'drm_sched_init' 90 | ret = drm_sched_init(&ring->sched, &msm_sched_ops, | ^~~~~~~~~~~~~~ In file included from drivers/gpu/drm/msm/msm_ringbuffer.h:10, from drivers/gpu/drm/msm/msm_ringbuffer.c:7: include/drm/gpu_scheduler.h:463:5: note: declared here 463 | int drm_sched_init(struct drm_gpu_scheduler *sched, | ^~~~~~~~~~~~~~ -- In file included from drivers/gpu/drm/v3d/v3d_sched.c:23: drivers/gpu/drm/v3d/v3d_sched.c: In function 'v3d_sched_init': >> drivers/gpu/drm/v3d/v3d_drv.h:158:26: error: implicit declaration of function 'to_platform_device' [-Werror=implicit-function-declaration] 158 | #define v3d_to_pdev(v3d) to_platform_device((v3d)->drm.dev) | ^~~~~~~~~~~~~~~~~~ drivers/gpu/drm/v3d/v3d_sched.c:394:49: note: in expansion of macro 'v3d_to_pdev' 394 | NULL, "v3d_bin", &(v3d_to_pdev(v3d)->dev)); | ^~~~~~~~~~~ >> drivers/gpu/drm/v3d/v3d_sched.c:394:65: error: invalid type argument of '->' (have 'int') 394 | NULL, "v3d_bin", &(v3d_to_pdev(v3d)->dev)); | ^~ drivers/gpu/drm/v3d/v3d_sched.c:404:68: error: invalid type argument of '->' (have 'int') 404 | NULL, "v3d_render", &(v3d_to_pdev(v3d)->dev)); | ^~ drivers/gpu/drm/v3d/v3d_sched.c:416:65: error: invalid type argument of '->' (have 'int') 416 | NULL, "v3d_tfu", &(v3d_to_pdev(v3d)->dev)); | ^~ drivers/gpu/drm/v3d/v3d_sched.c:429:73: error: invalid type argument of '->' (have 'int') 429 | NULL, "v3d_csd", &(v3d_to_pdev(v3d)->dev)); | ^~ drivers/gpu/drm/v3d/v3d_sched.c:441:81: error: invalid type argument of '->' (have 'int') 441 | NULL, "v3d_cache_clean", &(v3d_to_pdev(v3d)->dev)); | ^~ cc1: some warnings being treated as errors vim +/drm_sched_init +90 drivers/gpu/drm/msm/msm_ringbuffer.c 1d8a5ca436ee4a Rob Clark 2021-07-27 47 f97decac5f4c2d Jordan Crouse 2017-10-20 48 struct msm_ringbuffer *msm_ringbuffer_new(struct msm_gpu *gpu, int id, f97decac5f4c2d Jordan Crouse 2017-10-20 49 void *memptrs, uint64_t memptrs_iova) 7198e6b03155f6 Rob Clark 2013-07-19 50 { 7198e6b03155f6 Rob Clark 2013-07-19 51 struct msm_ringbuffer *ring; 1d8a5ca436ee4a Rob Clark 2021-07-27 52 long sched_timeout; f97decac5f4c2d Jordan Crouse 2017-10-20 53 char name[32]; 7198e6b03155f6 Rob Clark 2013-07-19 54 int ret; 7198e6b03155f6 Rob Clark 2013-07-19 55 f97decac5f4c2d Jordan Crouse 2017-10-20 56 /* We assume everwhere that MSM_GPU_RINGBUFFER_SZ is a power of 2 */ f97decac5f4c2d Jordan Crouse 2017-10-20 57 BUILD_BUG_ON(!is_power_of_2(MSM_GPU_RINGBUFFER_SZ)); 7198e6b03155f6 Rob Clark 2013-07-19 58 7198e6b03155f6 Rob Clark 2013-07-19 59 ring = kzalloc(sizeof(*ring), GFP_KERNEL); 7198e6b03155f6 Rob Clark 2013-07-19 60 if (!ring) { 7198e6b03155f6 Rob Clark 2013-07-19 61 ret = -ENOMEM; 7198e6b03155f6 Rob Clark 2013-07-19 62 goto fail; 7198e6b03155f6 Rob Clark 2013-07-19 63 } 7198e6b03155f6 Rob Clark 2013-07-19 64 7198e6b03155f6 Rob Clark 2013-07-19 65 ring->gpu = gpu; f97decac5f4c2d Jordan Crouse 2017-10-20 66 ring->id = id; 84c6127580c1ce Jordan Crouse 2018-11-07 67 f97decac5f4c2d Jordan Crouse 2017-10-20 68 ring->start = msm_gem_kernel_new(gpu->dev, MSM_GPU_RINGBUFFER_SZ, 604234f33658cd Jordan Crouse 2020-09-03 69 check_apriv(gpu, MSM_BO_WC | MSM_BO_GPU_READONLY), 604234f33658cd Jordan Crouse 2020-09-03 70 gpu->aspace, &ring->bo, &ring->iova); 8223286d62e296 Jordan Crouse 2017-07-27 71 69a834c28fb514 Rob Clark 2016-05-24 72 if (IS_ERR(ring->start)) { 69a834c28fb514 Rob Clark 2016-05-24 73 ret = PTR_ERR(ring->start); 375f9a63a66bae Rob Clark 2021-07-27 74 ring->start = NULL; 69a834c28fb514 Rob Clark 2016-05-24 75 goto fail; 69a834c28fb514 Rob Clark 2016-05-24 76 } 0815d7749a6852 Jordan Crouse 2018-11-07 77 0815d7749a6852 Jordan Crouse 2018-11-07 78 msm_gem_object_set_name(ring->bo, "ring%d", id); 0815d7749a6852 Jordan Crouse 2018-11-07 79 f97decac5f4c2d Jordan Crouse 2017-10-20 80 ring->end = ring->start + (MSM_GPU_RINGBUFFER_SZ >> 2); 4c7085a5d581a5 Jordan Crouse 2017-10-20 81 ring->next = ring->start; 7198e6b03155f6 Rob Clark 2013-07-19 82 ring->cur = ring->start; 7198e6b03155f6 Rob Clark 2013-07-19 83 f97decac5f4c2d Jordan Crouse 2017-10-20 84 ring->memptrs = memptrs; f97decac5f4c2d Jordan Crouse 2017-10-20 85 ring->memptrs_iova = memptrs_iova; f97decac5f4c2d Jordan Crouse 2017-10-20 86 1d8a5ca436ee4a Rob Clark 2021-07-27 87 /* currently managing hangcheck ourselves: */ 1d8a5ca436ee4a Rob Clark 2021-07-27 88 sched_timeout = MAX_SCHEDULE_TIMEOUT; 1d8a5ca436ee4a Rob Clark 2021-07-27 89 1d8a5ca436ee4a Rob Clark 2021-07-27 @90 ret = drm_sched_init(&ring->sched, &msm_sched_ops, 1d8a5ca436ee4a Rob Clark 2021-07-27 91 num_hw_submissions, 0, sched_timeout, f1b7996551a40a Dave Airlie 2021-07-30 92 NULL, NULL, to_msm_bo(ring->bo)->name); 1d8a5ca436ee4a Rob Clark 2021-07-27 93 if (ret) { 1d8a5ca436ee4a Rob Clark 2021-07-27 94 goto fail; 1d8a5ca436ee4a Rob Clark 2021-07-27 95 } 1d8a5ca436ee4a Rob Clark 2021-07-27 96 f97decac5f4c2d Jordan Crouse 2017-10-20 97 INIT_LIST_HEAD(&ring->submits); 77d205290aa944 Rob Clark 2020-10-23 98 spin_lock_init(&ring->submit_lock); 77c406038e830a Rob Clark 2020-10-23 99 spin_lock_init(&ring->preempt_lock); f97decac5f4c2d Jordan Crouse 2017-10-20 100 f97decac5f4c2d Jordan Crouse 2017-10-20 101 snprintf(name, sizeof(name), "gpu-ring-%d", ring->id); f97decac5f4c2d Jordan Crouse 2017-10-20 102 da3d378dec8634 Rob Clark 2021-07-26 103 ring->fctx = msm_fence_context_alloc(gpu->dev, &ring->memptrs->fence, name); 7198e6b03155f6 Rob Clark 2013-07-19 104 7198e6b03155f6 Rob Clark 2013-07-19 105 return ring; 7198e6b03155f6 Rob Clark 2013-07-19 106 7198e6b03155f6 Rob Clark 2013-07-19 107 fail: 7198e6b03155f6 Rob Clark 2013-07-19 108 msm_ringbuffer_destroy(ring); 7198e6b03155f6 Rob Clark 2013-07-19 109 return ERR_PTR(ret); 7198e6b03155f6 Rob Clark 2013-07-19 110 } 7198e6b03155f6 Rob Clark 2013-07-19 111 --- 0-DAY CI Kernel Test Service, Intel Corporation https://lists.01.org/hyperkitty/list/kbuild-all@xxxxxxxxxxxx