tree: git://people.freedesktop.org/~agd5f/linux.git amd-18.50 head: 6b02d4906a8c5b3e4a268516057e5b77bbc5f559 commit: a26f88704ef76f0213692b3b04f210de6e9e8676 [1284/1418] drm/scheduler: fix build error due to change in scheduler struct 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 a26f88704ef76f0213692b3b04f210de6e9e8676 # save the attached .config to linux build tree GCC_VERSION=8.1.0 make.cross ARCH=riscv All errors (new ones prefixed by >>): In file included from include/linux/byteorder/little_endian.h:5, from arch/riscv/include/uapi/asm/byteorder.h:21, from include/asm-generic/bitops/le.h:6, from arch/riscv/include/asm/bitops.h:215, from include/linux/bitops.h:38, from include/linux/kernel.h:11, from include/asm-generic/bug.h:18, from arch/riscv/include/asm/bug.h:75, from include/linux/bug.h:5, from arch/riscv/include/asm/current.h:21, from include/linux/sched.h:12, from include/linux/kthread.h:6, from drivers/gpu//drm/v3d/v3d_sched.c:21: drivers/gpu//drm/v3d/v3d_sched.c: In function 'v3d_job_timedout': drivers/gpu//drm/v3d/v3d_sched.c:157:44: error: 'job_q' undeclared (first use in this function); did you mean 'job'? u32 ctca = V3D_CORE_READ(0, V3D_CLE_CTNCA(job_q)); ^~~~~ include/uapi/linux/byteorder/little_endian.h:34:51: note: in definition of macro '__le32_to_cpu' #define __le32_to_cpu(x) ((__force __u32)(__le32)(x)) ^ arch/riscv/include/asm/io.h:172:47: note: in expansion of macro 'readl_cpu' #define readl(c) ({ u32 __v; __io_br(); __v = readl_cpu(c); __io_ar(); __v; }) ^~~~~~~~~ drivers/gpu//drm/v3d/v3d_drv.h:166:37: note: in expansion of macro 'readl' #define V3D_CORE_READ(core, offset) readl(v3d->core_regs[core] + offset) ^~~~~ drivers/gpu//drm/v3d/v3d_sched.c:157:13: note: in expansion of macro 'V3D_CORE_READ' u32 ctca = V3D_CORE_READ(0, V3D_CLE_CTNCA(job_q)); ^~~~~~~~~~~~~ drivers/gpu//drm/v3d/v3d_sched.c:157:30: note: in expansion of macro 'V3D_CLE_CTNCA' u32 ctca = V3D_CORE_READ(0, V3D_CLE_CTNCA(job_q)); ^~~~~~~~~~~~~ drivers/gpu//drm/v3d/v3d_sched.c:157:44: note: each undeclared identifier is reported only once for each function it appears in u32 ctca = V3D_CORE_READ(0, V3D_CLE_CTNCA(job_q)); ^~~~~ include/uapi/linux/byteorder/little_endian.h:34:51: note: in definition of macro '__le32_to_cpu' #define __le32_to_cpu(x) ((__force __u32)(__le32)(x)) ^ arch/riscv/include/asm/io.h:172:47: note: in expansion of macro 'readl_cpu' #define readl(c) ({ u32 __v; __io_br(); __v = readl_cpu(c); __io_ar(); __v; }) ^~~~~~~~~ drivers/gpu//drm/v3d/v3d_drv.h:166:37: note: in expansion of macro 'readl' #define V3D_CORE_READ(core, offset) readl(v3d->core_regs[core] + offset) ^~~~~ drivers/gpu//drm/v3d/v3d_sched.c:157:13: note: in expansion of macro 'V3D_CORE_READ' u32 ctca = V3D_CORE_READ(0, V3D_CLE_CTNCA(job_q)); ^~~~~~~~~~~~~ drivers/gpu//drm/v3d/v3d_sched.c:157:30: note: in expansion of macro 'V3D_CLE_CTNCA' u32 ctca = V3D_CORE_READ(0, V3D_CLE_CTNCA(job_q)); ^~~~~~~~~~~~~ >> drivers/gpu//drm/v3d/v3d_sched.c:158:30: error: implicit declaration of function 'V3D_CLE_CTNRA'; did you mean 'V3D_CLE_CT1RA'? [-Werror=implicit-function-declaration] u32 ctra = V3D_CORE_READ(0, V3D_CLE_CTNRA(job_q)); ^~~~~~~~~~~~~ include/uapi/linux/byteorder/little_endian.h:34:51: note: in definition of macro '__le32_to_cpu' #define __le32_to_cpu(x) ((__force __u32)(__le32)(x)) ^ arch/riscv/include/asm/io.h:172:47: note: in expansion of macro 'readl_cpu' #define readl(c) ({ u32 __v; __io_br(); __v = readl_cpu(c); __io_ar(); __v; }) ^~~~~~~~~ drivers/gpu//drm/v3d/v3d_drv.h:166:37: note: in expansion of macro 'readl' #define V3D_CORE_READ(core, offset) readl(v3d->core_regs[core] + offset) ^~~~~ drivers/gpu//drm/v3d/v3d_sched.c:158:13: note: in expansion of macro 'V3D_CORE_READ' 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 +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@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/dri-devel