tree: git://people.freedesktop.org/~gabbayo/linux amdkfd-next head: 9f0a0b41ffccf9a76b19ea263ae16d2d5888093e commit: 373d7080896a3cb3b28ae3a2abdafb7bb87552b1 [10/53] drm/amdkfd: Add CWSR support reproduce: # apt-get install sparse git checkout 373d7080896a3cb3b28ae3a2abdafb7bb87552b1 make ARCH=x86_64 allmodconfig make C=1 CF=-D__CHECK_ENDIAN__ sparse warnings: (new ones prefixed by >>) vim +289 drivers/gpu/drm/amd/amdkfd/kfd_process.c 273 274 static int kfd_process_init_cwsr(struct kfd_process *p, struct file *filep) 275 { 276 int err = 0; 277 unsigned long offset; 278 struct kfd_process_device *temp, *pdd = NULL; 279 struct kfd_dev *dev = NULL; 280 struct qcm_process_device *qpd = NULL; 281 282 mutex_lock(&p->mutex); 283 list_for_each_entry_safe(pdd, temp, &p->per_device_data, 284 per_device_list) { 285 dev = pdd->dev; 286 qpd = &pdd->qpd; 287 if (!dev->cwsr_enabled || qpd->cwsr_kaddr) 288 continue; > 289 offset = (dev->id | KFD_MMAP_RESERVED_MEM_MASK) << PAGE_SHIFT; 290 qpd->tba_addr = (int64_t)vm_mmap(filep, 0, 291 KFD_CWSR_TBA_TMA_SIZE, PROT_READ | PROT_EXEC, 292 MAP_SHARED, offset); 293 294 if (IS_ERR_VALUE(qpd->tba_addr)) { 295 pr_err("Failure to set tba address. error -%d.\n", 296 (int)qpd->tba_addr); 297 err = qpd->tba_addr; 298 qpd->tba_addr = 0; 299 qpd->cwsr_kaddr = NULL; 300 goto out; 301 } 302 303 memcpy(qpd->cwsr_kaddr, dev->cwsr_isa, dev->cwsr_isa_size); 304 305 qpd->tma_addr = qpd->tba_addr + KFD_CWSR_TMA_OFFSET; 306 pr_debug("set tba :0x%llx, tma:0x%llx, cwsr_kaddr:%p for pqm.\n", 307 qpd->tba_addr, qpd->tma_addr, qpd->cwsr_kaddr); 308 } 309 out: 310 mutex_unlock(&p->mutex); 311 return err; 312 } 313 --- 0-DAY kernel test infrastructure Open Source Technology Center https://lists.01.org/pipermail/kbuild-all Intel Corporation _______________________________________________ dri-devel mailing list dri-devel@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/dri-devel