Lines Matching refs:zdd
95 struct drm_pagemap_zdd *zdd; in drm_pagemap_zdd_alloc() local
97 zdd = kmalloc_obj(*zdd); in drm_pagemap_zdd_alloc()
98 if (!zdd) in drm_pagemap_zdd_alloc()
101 kref_init(&zdd->refcount); in drm_pagemap_zdd_alloc()
102 zdd->devmem_allocation = NULL; in drm_pagemap_zdd_alloc()
103 zdd->dpagemap = drm_pagemap_get(dpagemap); in drm_pagemap_zdd_alloc()
105 return zdd; in drm_pagemap_zdd_alloc()
116 static struct drm_pagemap_zdd *drm_pagemap_zdd_get(struct drm_pagemap_zdd *zdd) in drm_pagemap_zdd_get() argument
118 kref_get(&zdd->refcount); in drm_pagemap_zdd_get()
119 return zdd; in drm_pagemap_zdd_get()
130 struct drm_pagemap_zdd *zdd = in drm_pagemap_zdd_destroy() local
132 struct drm_pagemap_devmem *devmem = zdd->devmem_allocation; in drm_pagemap_zdd_destroy()
133 struct drm_pagemap *dpagemap = zdd->dpagemap; in drm_pagemap_zdd_destroy()
140 kfree(zdd); in drm_pagemap_zdd_destroy()
151 static void drm_pagemap_zdd_put(struct drm_pagemap_zdd *zdd) in drm_pagemap_zdd_put() argument
153 kref_put(&zdd->refcount, drm_pagemap_zdd_destroy); in drm_pagemap_zdd_put()
201 struct drm_pagemap_zdd *zdd) in drm_pagemap_get_devmem_page() argument
203 page->zone_device_data = drm_pagemap_zdd_get(zdd); in drm_pagemap_get_devmem_page()
247 struct drm_pagemap_zdd *zdd = page->zone_device_data; in drm_pagemap_migrate_map_pages() local
248 struct drm_pagemap *dpagemap = zdd->dpagemap; in drm_pagemap_migrate_map_pages()
318 struct drm_pagemap_zdd *zdd = page->zone_device_data; in drm_pagemap_migrate_unmap_pages() local
319 struct drm_pagemap *dpagemap = zdd->dpagemap; in drm_pagemap_migrate_unmap_pages()
490 struct drm_pagemap_zdd *zdd = NULL; in drm_pagemap_migrate_to_devmem() local
527 zdd = drm_pagemap_zdd_alloc(dpagemap); in drm_pagemap_migrate_to_devmem()
528 if (!zdd) { in drm_pagemap_migrate_to_devmem()
533 zdd->devmem_allocation = devmem_allocation; /* Owns ref */ in drm_pagemap_migrate_to_devmem()
618 drm_pagemap_get_devmem_page(page, zdd); in drm_pagemap_migrate_to_devmem()
668 drm_pagemap_zdd_put(zdd); in drm_pagemap_migrate_to_devmem()
1050 struct drm_pagemap_zdd *zdd; in __drm_pagemap_migrate_to_ram() local
1060 zdd = page->zone_device_data; in __drm_pagemap_migrate_to_ram()
1061 if (time_before64(get_jiffies_64(), zdd->devmem_allocation->timeslice_expiration)) in __drm_pagemap_migrate_to_ram()
1098 ops = zdd->devmem_allocation->ops; in __drm_pagemap_migrate_to_ram()
1099 dev = zdd->devmem_allocation->dev; in __drm_pagemap_migrate_to_ram()
1107 err = drm_pagemap_migrate_map_pages(dev, zdd->dpagemap, pagemap_addr, migrate.dst, npages, in __drm_pagemap_migrate_to_ram()
1159 struct drm_pagemap_zdd *zdd = vmf->page->zone_device_data; in drm_pagemap_migrate_to_ram() local
1164 zdd->devmem_allocation->size); in drm_pagemap_migrate_to_ram()
1225 struct drm_pagemap_zdd *zdd = page->zone_device_data; in drm_pagemap_page_to_dpagemap() local
1227 return zdd->devmem_allocation->dpagemap; in drm_pagemap_page_to_dpagemap()