Searched refs:dpagemap (Results 1 – 8 of 8) sorted by relevance
| /linux/drivers/gpu/drm/ |
| H A D | drm_pagemap_util.c | 34 struct drm_pagemap *dpagemap; member 58 static bool drm_pagemap_shrinker_cancel(struct drm_pagemap *dpagemap); 63 struct drm_pagemap *dpagemap; in drm_pagemap_cache_fini() local 67 dpagemap = cache->dpagemap; in drm_pagemap_cache_fini() 68 cache->dpagemap = NULL; in drm_pagemap_cache_fini() 69 if (dpagemap && !drm_pagemap_shrinker_cancel(dpagemap)) in drm_pagemap_cache_fini() 70 dpagemap = NULL; in drm_pagemap_cache_fini() 73 if (dpagemap) in drm_pagemap_cache_fini() 74 drm_pagemap_destroy(dpagemap, false); in drm_pagemap_cache_fini() 177 struct drm_pagemap *dpagemap; in drm_pagemap_get_from_cache() local [all …]
|
| H A D | drm_pagemap.c | 80 struct drm_pagemap *dpagemap; member 93 drm_pagemap_zdd_alloc(struct drm_pagemap *dpagemap) in drm_pagemap_zdd_alloc() argument 103 zdd->dpagemap = drm_pagemap_get(dpagemap); in drm_pagemap_zdd_alloc() 133 struct drm_pagemap *dpagemap = zdd->dpagemap; in drm_pagemap_zdd_destroy() local 141 drm_pagemap_put(dpagemap); in drm_pagemap_zdd_destroy() 213 zone_device_folio_init((struct folio *)page, zdd->dpagemap->pagemap, in drm_pagemap_get_devmem_page() 259 struct drm_pagemap *dpagemap = zdd->dpagemap; in drm_pagemap_migrate_map_pages() local 262 if (dpagemap == local_dpagemap) { in drm_pagemap_migrate_map_pages() 271 addr = dpagemap->ops->device_map(dpagemap, dev, page, order, dir); in drm_pagemap_migrate_map_pages() 330 struct drm_pagemap *dpagemap = zdd->dpagemap; in drm_pagemap_migrate_unmap_pages() local [all …]
|
| H A D | drm_gpusvm.c | 1132 struct drm_pagemap *dpagemap = svm_pages->dpagemap; in __drm_gpusvm_unmap_pages() local 1151 else if (dpagemap && dpagemap->ops->device_unmap) in __drm_gpusvm_unmap_pages() 1152 dpagemap->ops->device_unmap(dpagemap, in __drm_gpusvm_unmap_pages() 1162 drm_pagemap_put(svm_pages->dpagemap); in __drm_gpusvm_unmap_pages() 1163 svm_pages->dpagemap = NULL; in __drm_gpusvm_unmap_pages() 1407 struct drm_pagemap *dpagemap; in drm_gpusvm_get_pages() local 1507 dpagemap = drm_pagemap_page_to_dpagemap(page); in drm_gpusvm_get_pages() 1508 if (drm_WARN_ON(gpusvm->drm, !dpagemap)) { in drm_gpusvm_get_pages() 1519 dpagemap->ops->device_map(dpagemap, in drm_gpusvm_get_pages() 1562 drm_pagemap_get(dpagemap); in drm_gpusvm_get_pages() [all …]
|
| /linux/drivers/gpu/drm/xe/ |
| H A D | xe_svm.c | 771 static u64 block_offset_to_pfn(struct drm_pagemap *dpagemap, u64 offset) in block_offset_to_pfn() argument 773 struct xe_pagemap *xpagemap = container_of(dpagemap, typeof(*xpagemap), dpagemap); in block_offset_to_pfn() 795 u64 block_pfn = block_offset_to_pfn(devmem_allocation->dpagemap, in xe_svm_populate_devmem_pfn() 834 drm_pagemap_put(&xpagemap->dpagemap); in xe_pagemap_put() 855 return container_of(peer, struct xe_pagemap, peer)->dpagemap.drm->dev; in xe_peer_to_dev() 953 const struct drm_pagemap *dpagemap) in xe_svm_range_has_pagemap_locked() argument 955 return range->base.pages.dpagemap == dpagemap; in xe_svm_range_has_pagemap_locked() 959 const struct drm_pagemap *dpagemap) in xe_svm_range_has_pagemap() argument 965 ret = xe_svm_range_has_pagemap_locked(range, dpagemap); in xe_svm_range_has_pagemap() 974 const struct drm_pagemap *dpagemap) in xe_svm_range_is_valid() argument [all …]
|
| H A D | xe_vm_madvise.c | 39 struct drm_pagemap *dpagemap; member 119 drm_pagemap_put(loc->dpagemap); in madvise_preferred_mem_loc() 120 loc->dpagemap = NULL; in madvise_preferred_mem_loc() 121 if (details->dpagemap) in madvise_preferred_mem_loc() 122 loc->dpagemap = drm_pagemap_get(details->dpagemap); in madvise_preferred_mem_loc() 583 struct drm_pagemap *dpagemap; in xe_madvise_details_init() local 588 dpagemap = xe_drm_pagemap_from_fd(args->preferred_mem_loc.devmem_fd, in xe_madvise_details_init() 590 if (XE_IOCTL_DBG(xe, IS_ERR(dpagemap))) in xe_madvise_details_init() 591 return PTR_ERR(dpagemap); in xe_madvise_details_init() 594 if (XE_IOCTL_DBG(xe, dpagemap->pagemap->owner != vm->svm.peer.owner)) { in xe_madvise_details_init() [all …]
|
| H A D | xe_svm.h | 62 struct drm_pagemap dpagemap; member 99 struct drm_pagemap *dpagemap); 108 const struct drm_pagemap *dpagemap); 114 u8 tile_mask, const struct drm_pagemap *dpagemap); 284 struct drm_pagemap *dpagemap) in xe_svm_alloc_vram() argument 325 const struct drm_pagemap *dpagemap) in xe_svm_range_needs_migrate_to_vram() argument
|
| H A D | xe_vm_types.h | 78 struct drm_pagemap *dpagemap; member 478 struct drm_pagemap *dpagemap; member
|
| H A D | xe_vm.c | 1038 drm_pagemap_put(attr->preferred_loc.dpagemap); in xe_vma_mem_attr_fini() 1063 if (to->preferred_loc.dpagemap) in xe_vma_mem_attr_copy() 1064 drm_pagemap_get(to->preferred_loc.dpagemap); in xe_vma_mem_attr_copy() 2468 struct drm_pagemap *dpagemap = NULL; in vm_bind_ioctl_ops_create() local 2488 dpagemap = xe_vma_resolve_pagemap(vma, in vm_bind_ioctl_ops_create() 2493 dpagemap = xe_tile_local_pagemap(tile); in vm_bind_ioctl_ops_create() 2496 op->prefetch_range.dpagemap = dpagemap; in vm_bind_ioctl_ops_create() 2515 if (xe_svm_range_validate(vm, svm_range, tile_mask, dpagemap)) { in vm_bind_ioctl_ops_create() 3081 struct drm_pagemap *dpagemap = op->prefetch_range.dpagemap; in prefetch_ranges() local 3094 ctx.device_private_page_owner = xe_svm_private_page_owner(vm, !dpagemap); in prefetch_ranges() [all …]
|