[radeon-alex:drm-next-5.3-wip 159/169] drivers/gpu/drm/panfrost/panfrost_job.c:390:3: error: too few arguments to function 'drm_sched_stop'

kbuild test robot lkp at intel.com
Tue May 21 03:35:14 UTC 2019


tree:   git://people.freedesktop.org/~agd5f/linux.git drm-next-5.3-wip
head:   8dcf1d70d7d7058b54e1356297f201cb7ba6d14f
commit: 399abb79bbdece4bdcb35a5f2983b2335410eeec [159/169] drm/scheduler: rework job destruction
config: riscv-allyesconfig (attached as .config)
compiler: riscv64-linux-gcc (GCC) 8.1.0
reproduce:
        wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
        chmod +x ~/bin/make.cross
        git checkout 399abb79bbdece4bdcb35a5f2983b2335410eeec
        # save the attached .config to linux build tree
        GCC_VERSION=8.1.0 make.cross ARCH=riscv 

If you fix the issue, kindly add following tag
Reported-by: kbuild test robot <lkp at intel.com>

All errors (new ones prefixed by >>):

   drivers/gpu/drm/panfrost/panfrost_job.c: In function 'panfrost_job_timedout':
>> drivers/gpu/drm/panfrost/panfrost_job.c:390:3: error: too few arguments to function 'drm_sched_stop'
      drm_sched_stop(&pfdev->js->queue[i].sched);
      ^~~~~~~~~~~~~~
   In file included from drivers/gpu/drm/panfrost/panfrost_job.c:10:
   include/drm/gpu_scheduler.h:295:6: note: declared here
    void drm_sched_stop(struct drm_gpu_scheduler *sched, struct drm_sched_job *bad);
         ^~~~~~~~~~~~~~

vim +/drm_sched_stop +390 drivers/gpu/drm/panfrost/panfrost_job.c

f3ba9122 Rob Herring  2018-09-10  365  
f3ba9122 Rob Herring  2018-09-10  366  static void panfrost_job_timedout(struct drm_sched_job *sched_job)
f3ba9122 Rob Herring  2018-09-10  367  {
f3ba9122 Rob Herring  2018-09-10  368  	struct panfrost_job *job = to_panfrost_job(sched_job);
f3ba9122 Rob Herring  2018-09-10  369  	struct panfrost_device *pfdev = job->pfdev;
f3ba9122 Rob Herring  2018-09-10  370  	int js = panfrost_job_get_slot(job);
f3ba9122 Rob Herring  2018-09-10  371  	int i;
f3ba9122 Rob Herring  2018-09-10  372  
f3ba9122 Rob Herring  2018-09-10  373  	/*
f3ba9122 Rob Herring  2018-09-10  374  	 * If the GPU managed to complete this jobs fence, the timeout is
f3ba9122 Rob Herring  2018-09-10  375  	 * spurious. Bail out.
f3ba9122 Rob Herring  2018-09-10  376  	 */
f3ba9122 Rob Herring  2018-09-10  377  	if (dma_fence_is_signaled(job->done_fence))
f3ba9122 Rob Herring  2018-09-10  378  		return;
f3ba9122 Rob Herring  2018-09-10  379  
f3ba9122 Rob Herring  2018-09-10  380  	dev_err(pfdev->dev, "gpu sched timeout, js=%d, status=0x%x, head=0x%x, tail=0x%x, sched_job=%p",
f3ba9122 Rob Herring  2018-09-10  381  		js,
f3ba9122 Rob Herring  2018-09-10  382  		job_read(pfdev, JS_STATUS(js)),
f3ba9122 Rob Herring  2018-09-10  383  		job_read(pfdev, JS_HEAD_LO(js)),
f3ba9122 Rob Herring  2018-09-10  384  		job_read(pfdev, JS_TAIL_LO(js)),
f3ba9122 Rob Herring  2018-09-10  385  		sched_job);
f3ba9122 Rob Herring  2018-09-10  386  
aa202367 Tomeu Vizoso 2019-04-18  387  	mutex_lock(&pfdev->reset_lock);
aa202367 Tomeu Vizoso 2019-04-18  388  
f3ba9122 Rob Herring  2018-09-10  389  	for (i = 0; i < NUM_JOB_SLOTS; i++)
f3ba9122 Rob Herring  2018-09-10 @390  		drm_sched_stop(&pfdev->js->queue[i].sched);
f3ba9122 Rob Herring  2018-09-10  391  
f3ba9122 Rob Herring  2018-09-10  392  	if (sched_job)
f3ba9122 Rob Herring  2018-09-10  393  		drm_sched_increase_karma(sched_job);
f3ba9122 Rob Herring  2018-09-10  394  
f3ba9122 Rob Herring  2018-09-10  395  	/* panfrost_core_dump(pfdev); */
f3ba9122 Rob Herring  2018-09-10  396  
f3ba9122 Rob Herring  2018-09-10  397  	panfrost_devfreq_record_transition(pfdev, js);
f3ba9122 Rob Herring  2018-09-10  398  	panfrost_gpu_soft_reset(pfdev);
f3ba9122 Rob Herring  2018-09-10  399  
f3ba9122 Rob Herring  2018-09-10  400  	/* TODO: Re-enable all other address spaces */
f3ba9122 Rob Herring  2018-09-10  401  	panfrost_mmu_enable(pfdev, 0);
f3ba9122 Rob Herring  2018-09-10  402  	panfrost_gpu_power_on(pfdev);
f3ba9122 Rob Herring  2018-09-10  403  	panfrost_job_enable_interrupts(pfdev);
f3ba9122 Rob Herring  2018-09-10  404  
f3ba9122 Rob Herring  2018-09-10  405  	for (i = 0; i < NUM_JOB_SLOTS; i++)
f3ba9122 Rob Herring  2018-09-10  406  		drm_sched_resubmit_jobs(&pfdev->js->queue[i].sched);
f3ba9122 Rob Herring  2018-09-10  407  
f3ba9122 Rob Herring  2018-09-10  408  	/* restart scheduler after GPU is usable again */
f3ba9122 Rob Herring  2018-09-10  409  	for (i = 0; i < NUM_JOB_SLOTS; i++)
f3ba9122 Rob Herring  2018-09-10  410  		drm_sched_start(&pfdev->js->queue[i].sched, true);
aa202367 Tomeu Vizoso 2019-04-18  411  
aa202367 Tomeu Vizoso 2019-04-18  412  	mutex_unlock(&pfdev->reset_lock);
f3ba9122 Rob Herring  2018-09-10  413  }
f3ba9122 Rob Herring  2018-09-10  414  

:::::: The code at line 390 was first introduced by commit
:::::: f3ba91228e8e917e5bd6c4b72bfe846933d17370 drm/panfrost: Add initial panfrost driver

:::::: TO: Rob Herring <robh at kernel.org>
:::::: CC: Rob Herring <robh at kernel.org>

---
0-DAY kernel test infrastructure                Open Source Technology Center
https://lists.01.org/pipermail/kbuild-all                   Intel Corporation
-------------- next part --------------
A non-text attachment was scrubbed...
Name: .config.gz
Type: application/gzip
Size: 58778 bytes
Desc: not available
URL: <https://lists.freedesktop.org/archives/dri-devel/attachments/20190521/ad2b4f44/attachment-0001.gz>


More information about the dri-devel mailing list