[radeon-alex:drm-next-5.2-wip 47/78] drivers/gpu//drm/panfrost/panfrost_job.c:388:3: error: too few arguments to function 'drm_sched_stop'

kbuild test robot lkp at intel.com
Fri May 3 03:59:08 UTC 2019


tree:   git://people.freedesktop.org/~agd5f/linux.git drm-next-5.2-wip
head:   ad636d2a1cb80ed84030892630a6159c0e34dd85
commit: d88e20633f0308bf17e954f4e71b44c16252e4f0 [47/78] 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 d88e20633f0308bf17e954f4e71b44c16252e4f0
        # 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:388: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 +388 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  
f3ba9122 Rob Herring 2018-09-10  387  	for (i = 0; i < NUM_JOB_SLOTS; i++)
f3ba9122 Rob Herring 2018-09-10 @388  		drm_sched_stop(&pfdev->js->queue[i].sched);
f3ba9122 Rob Herring 2018-09-10  389  
f3ba9122 Rob Herring 2018-09-10  390  	if (sched_job)
f3ba9122 Rob Herring 2018-09-10  391  		drm_sched_increase_karma(sched_job);
f3ba9122 Rob Herring 2018-09-10  392  
f3ba9122 Rob Herring 2018-09-10  393  	/* panfrost_core_dump(pfdev); */
f3ba9122 Rob Herring 2018-09-10  394  
f3ba9122 Rob Herring 2018-09-10  395  	panfrost_devfreq_record_transition(pfdev, js);
f3ba9122 Rob Herring 2018-09-10  396  	panfrost_gpu_soft_reset(pfdev);
f3ba9122 Rob Herring 2018-09-10  397  
f3ba9122 Rob Herring 2018-09-10  398  	/* TODO: Re-enable all other address spaces */
f3ba9122 Rob Herring 2018-09-10  399  	panfrost_mmu_enable(pfdev, 0);
f3ba9122 Rob Herring 2018-09-10  400  	panfrost_gpu_power_on(pfdev);
f3ba9122 Rob Herring 2018-09-10  401  	panfrost_job_enable_interrupts(pfdev);
f3ba9122 Rob Herring 2018-09-10  402  
f3ba9122 Rob Herring 2018-09-10  403  	for (i = 0; i < NUM_JOB_SLOTS; i++)
f3ba9122 Rob Herring 2018-09-10  404  		drm_sched_resubmit_jobs(&pfdev->js->queue[i].sched);
f3ba9122 Rob Herring 2018-09-10  405  
f3ba9122 Rob Herring 2018-09-10  406  	/* restart scheduler after GPU is usable again */
f3ba9122 Rob Herring 2018-09-10  407  	for (i = 0; i < NUM_JOB_SLOTS; i++)
f3ba9122 Rob Herring 2018-09-10  408  		drm_sched_start(&pfdev->js->queue[i].sched, true);
f3ba9122 Rob Herring 2018-09-10  409  }
f3ba9122 Rob Herring 2018-09-10  410  

:::::: The code at line 388 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: 56290 bytes
Desc: not available
URL: <https://lists.freedesktop.org/archives/dri-devel/attachments/20190503/65b0809f/attachment-0001.gz>


More information about the dri-devel mailing list