Lines Matching refs:chunks
201 chunk_array_user = u64_to_user_ptr(cs->in.chunks); in amdgpu_cs_pass1()
209 p->chunks = kvmalloc_array(p->nchunks, sizeof(struct amdgpu_cs_chunk), in amdgpu_cs_pass1()
211 if (!p->chunks) { in amdgpu_cs_pass1()
228 p->chunks[i].chunk_id = user_chunk.chunk_id; in amdgpu_cs_pass1()
229 p->chunks[i].length_dw = user_chunk.length_dw; in amdgpu_cs_pass1()
231 size = p->chunks[i].length_dw; in amdgpu_cs_pass1()
234 p->chunks[i].kdata = kvmalloc_array(size, sizeof(uint32_t), in amdgpu_cs_pass1()
236 if (p->chunks[i].kdata == NULL) { in amdgpu_cs_pass1()
242 if (copy_from_user(p->chunks[i].kdata, cdata, size)) { in amdgpu_cs_pass1()
249 switch (p->chunks[i].chunk_id) { in amdgpu_cs_pass1()
254 ret = amdgpu_cs_p1_ib(p, p->chunks[i].kdata, num_ibs); in amdgpu_cs_pass1()
263 ret = amdgpu_cs_p1_user_fence(p, p->chunks[i].kdata, in amdgpu_cs_pass1()
273 ret = amdgpu_cs_p1_bo_handles(p, p->chunks[i].kdata); in amdgpu_cs_pass1()
326 kvfree(p->chunks[i].kdata); in amdgpu_cs_pass1()
327 kvfree(p->chunks); in amdgpu_cs_pass1()
328 p->chunks = NULL; in amdgpu_cs_pass1()
587 chunk = &p->chunks[i]; in amdgpu_cs_pass2()
1358 kvfree(parser->chunks[i].kdata); in amdgpu_cs_parser_fini()
1359 kvfree(parser->chunks); in amdgpu_cs_parser_fini()