Lines Matching refs:mem_regions

243 	return offsetof(struct drm_xe_query_mem_regions, mem_regions[num_managers]);  in calc_mem_regions_size()
250 struct drm_xe_query_mem_regions *mem_regions; in query_mem_regions() local
263 mem_regions = kzalloc(size, GFP_KERNEL); in query_mem_regions()
264 if (XE_IOCTL_DBG(xe, !mem_regions)) in query_mem_regions()
268 mem_regions->mem_regions[0].mem_class = DRM_XE_MEM_REGION_CLASS_SYSMEM; in query_mem_regions()
274 mem_regions->mem_regions[0].instance = 0; in query_mem_regions()
275 mem_regions->mem_regions[0].min_page_size = PAGE_SIZE; in query_mem_regions()
276 mem_regions->mem_regions[0].total_size = man->size << PAGE_SHIFT; in query_mem_regions()
278 mem_regions->mem_regions[0].used = ttm_resource_manager_usage(man); in query_mem_regions()
279 mem_regions->num_mem_regions = 1; in query_mem_regions()
284 mem_regions->mem_regions[mem_regions->num_mem_regions].mem_class = in query_mem_regions()
286 mem_regions->mem_regions[mem_regions->num_mem_regions].instance = in query_mem_regions()
287 mem_regions->num_mem_regions; in query_mem_regions()
288 mem_regions->mem_regions[mem_regions->num_mem_regions].min_page_size = in query_mem_regions()
291 mem_regions->mem_regions[mem_regions->num_mem_regions].total_size = in query_mem_regions()
296 &mem_regions->mem_regions in query_mem_regions()
297 [mem_regions->num_mem_regions].used, in query_mem_regions()
298 &mem_regions->mem_regions in query_mem_regions()
299 [mem_regions->num_mem_regions].cpu_visible_used); in query_mem_regions()
302 mem_regions->mem_regions[mem_regions->num_mem_regions].cpu_visible_size = in query_mem_regions()
304 mem_regions->num_mem_regions++; in query_mem_regions()
308 if (!copy_to_user(query_ptr, mem_regions, size)) in query_mem_regions()
313 kfree(mem_regions); in query_mem_regions()