tree:   git://people.freedesktop.org/~agd5f/linux.git amd-staging-dkms-4.18
head:   937a0a9df97d4c1c7cecf6faa2f501d175bc3c2a
commit: a26f88704ef76f0213692b3b04f210de6e9e8676 [1267/1379] drm/scheduler: fix 
build error due to change in scheduler struct
config: i386-allyesconfig (attached as .config)
compiler: gcc-7 (Debian 7.3.0-1) 7.3.0
reproduce:
        git checkout a26f88704ef76f0213692b3b04f210de6e9e8676
        # save the attached .config to linux build tree
        make ARCH=i386 

All errors (new ones prefixed by >>):

   drivers/gpu/drm/v3d/v3d_sched.c: In function 'v3d_job_timedout':
   drivers/gpu/drm/v3d/v3d_sched.c:157:54: error: 'job_q' undeclared (first use 
in this function); did you mean 'job'?
     u32 ctca = V3D_CORE_READ(0, V3D_CLE_CTNCA(job_q));
                                                         ^    
                                                         job
   drivers/gpu/drm/v3d/v3d_sched.c:157:54: note: each undeclared identifier is 
reported only once for each function it appears in
>> drivers/gpu/drm/v3d/v3d_sched.c:158:39: error: implicit declaration of 
>> function 'V3D_CLE_CTNRA' [-Werror=implicit-function-declaration]
     u32 ctra = V3D_CORE_READ(0, V3D_CLE_CTNRA(job_q));
                                          ^~~~~~~~~~~~~
   drivers/gpu/drm/v3d/v3d_sched.c:166:9: error: 'struct v3d_job' has no member 
named 'timedout_ctca'
     if (job->timedout_ctca != ctca || job->timedout_ctra != ctra) {
            ^~
   drivers/gpu/drm/v3d/v3d_sched.c:166:39: error: 'struct v3d_job' has no 
member named 'timedout_ctra'
     if (job->timedout_ctca != ctca || job->timedout_ctra != ctra) {
                                          ^~
   drivers/gpu/drm/v3d/v3d_sched.c:167:6: error: 'struct v3d_job' has no member 
named 'timedout_ctca'
      job->timedout_ctca = ctca;
         ^~
   drivers/gpu/drm/v3d/v3d_sched.c:168:6: error: 'struct v3d_job' has no member 
named 'timedout_ctra'
      job->timedout_ctra = ctra;
         ^~
   cc1: some warnings being treated as errors

vim +/V3D_CLE_CTNRA +158 drivers/gpu/drm/v3d/v3d_sched.c

   149  
   150  static void
   151  v3d_job_timedout(struct drm_sched_job *sched_job)
   152  {
   153          struct v3d_job *job = to_v3d_job(sched_job);
   154          struct v3d_exec_info *exec = job->exec;
   155          struct v3d_dev *v3d = exec->v3d;
   156          enum v3d_queue q;
 > 157          u32 ctca = V3D_CORE_READ(0, V3D_CLE_CTNCA(job_q));
 > 158          u32 ctra = V3D_CORE_READ(0, V3D_CLE_CTNRA(job_q));
   159  
   160          /* If the current address or return address have changed, then
   161           * the GPU has probably made progress and we should delay the
   162           * reset.  This could fail if the GPU got in an infinite loop
   163           * in the CL, but that is pretty unlikely outside of an i-g-t
   164           * testcase.
   165           */
   166          if (job->timedout_ctca != ctca || job->timedout_ctra != ctra) {
   167                  job->timedout_ctca = ctca;
   168                  job->timedout_ctra = ctra;
   169  
   170                  schedule_delayed_work(&job->base.sched->work_tdr,
   171                                        job->base.sched->timeout);
   172                  return;
   173          }
   174  
   175          mutex_lock(&v3d->reset_lock);
   176  
   177          /* block scheduler */
   178          for (q = 0; q < V3D_MAX_QUEUES; q++) {
   179                  struct drm_gpu_scheduler *sched = &v3d->queue[q].sched;
   180  
   181                  kthread_park(sched->thread);
   182                  drm_sched_hw_job_reset(sched, (sched_job->sched == 
sched ?
   183                                                 sched_job : NULL));
   184          }
   185  
   186          /* get the GPU back into the init state */
   187          v3d_reset(v3d);
   188  
   189          /* Unblock schedulers and restart their jobs. */
   190          for (q = 0; q < V3D_MAX_QUEUES; q++) {
   191                  drm_sched_job_recovery(&v3d->queue[q].sched);
   192                  kthread_unpark(v3d->queue[q].sched.thread);
   193          }
   194  
   195          mutex_unlock(&v3d->reset_lock);
   196  }
   197  

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

Attachment: .config.gz
Description: application/gzip

_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

Reply via email to