| /linux/drivers/gpu/drm/msm/ |
| H A D | msm_gem.c | 153 } else if (msm_obj->madv == MSM_MADV_WILLNEED) { in update_lru_active() 156 GEM_WARN_ON(msm_obj->madv != MSM_MADV_DONTNEED); in update_lru_active() 265 struct page **msm_gem_get_pages_locked(struct drm_gem_object *obj, unsigned madv) in msm_gem_get_pages_locked() argument 271 if (msm_obj->madv > madv) { in msm_gem_get_pages_locked() 273 msm_obj->madv, madv); in msm_gem_get_pages_locked() 350 if (GEM_WARN_ON(msm_obj->madv != MSM_MADV_WILLNEED)) { in msm_gem_fault() 708 static void *get_vaddr(struct drm_gem_object *obj, unsigned madv) in get_vaddr() argument 719 pages = msm_gem_get_pages_locked(obj, madv); in get_vaddr() 798 int msm_gem_madvise(struct drm_gem_object *obj, unsigned madv) in msm_gem_madvise() argument 807 if (msm_obj->madv != __MSM_MADV_PURGED) in msm_gem_madvise() [all …]
|
| H A D | msm_drv.c | 738 switch (args->madv) { in msm_ioctl_gem_madvise() 751 ret = msm_gem_madvise(obj, args->madv); in msm_ioctl_gem_madvise()
|
| /linux/drivers/gpu/drm/vc4/ |
| H A D | vc4_bo.c | 271 * the purgeable lock in order to acquire the madv one and update the in vc4_bo_remove_from_purgeable_pool_locked() 272 * madv status. in vc4_bo_remove_from_purgeable_pool_locked() 274 * the BO as unpurgeable, and if bo->madv is set to in vc4_bo_remove_from_purgeable_pool_locked() 302 WARN_ON(bo->madv != VC4_MADV_DONTNEED); in vc4_bo_purge() 308 bo->madv = __VC4_MADV_PURGED; in vc4_bo_purge() 333 * the BO madv one, the user may have marked the BO as WILLNEED in vc4_bo_userspace_cache_purge() 341 if (bo->madv == VC4_MADV_DONTNEED && in vc4_bo_userspace_cache_purge() 405 bo->madv = VC4_MADV_WILLNEED; in vc4_create_object() 481 bo->madv = __VC4_MADV_NOTSUPP; in vc4_bo_create() 509 bo->madv in vc4_bo_dumb_create() [all...] |
| H A D | vc4_gem.c | 266 if (bo->madv == __VC4_MADV_NOTSUPP) in vc4_save_hang_state() 270 if (!WARN_ON(bo->madv == __VC4_MADV_PURGED)) in vc4_save_hang_state() 271 bo->madv = VC4_MADV_WILLNEED; in vc4_save_hang_state() 1226 switch (args->madv) { in vc4_gem_madvise_ioctl() 1246 if (bo->madv == __VC4_MADV_NOTSUPP) { in vc4_gem_madvise_ioctl() 1263 if (args->madv == VC4_MADV_DONTNEED && bo->madv == VC4_MADV_WILLNEED && in vc4_gem_madvise_ioctl() 1270 } else if (args->madv == VC4_MADV_WILLNEED && in vc4_gem_madvise_ioctl() 1271 bo->madv == VC4_MADV_DONTNEED && in vc4_gem_madvise_ioctl() 1280 args->retained = bo->madv ! in vc4_gem_madvise_ioctl() [all...] |
| /linux/drivers/gpu/drm/ |
| H A D | drm_gem_shmem_helper.c | 502 int drm_gem_shmem_madvise_locked(struct drm_gem_shmem_object *shmem, int madv) in drm_gem_shmem_purge_locked() 506 if (shmem->madv >= 0) in drm_gem_shmem_purge_locked() 507 shmem->madv = madv; in drm_gem_shmem_purge_locked() 509 madv = shmem->madv; in drm_gem_shmem_purge_locked() 511 return (madv >= 0); in drm_gem_shmem_purge_locked() 531 shmem->madv = -1; 647 shmem->madv < 0) in drm_gem_shmem_fault() 1008 int drm_gem_shmem_madvise(struct drm_gem_shmem_object *shmem, int madv) in drm_gem_shmem_purge() 482 drm_gem_shmem_madvise_locked(struct drm_gem_shmem_object * shmem,int madv) drm_gem_shmem_madvise_locked() argument 988 drm_gem_shmem_madvise(struct drm_gem_shmem_object * shmem,int madv) drm_gem_shmem_madvise() argument [all...] |
| /linux/tools/testing/selftests/mm/ |
| H A D | hugetlb_madv_vs_map.c | 44 void *madv(void *unused) in madv() function 105 pthread_create(&thread1, NULL, madv, NULL); in main()
|
| H A D | hugetlb_fault_after_madv.c | 45 void *madv(void *unused) in madv() 91 pthread_create(&thread1, NULL, madv, NULL); in main() 44 void *madv(void *unused) madv() function
|
| /linux/drivers/gpu/drm/tests/ |
| H A D | drm_gem_shmem_test.c | 290 KUNIT_ASSERT_EQ(test, shmem->madv, 0); in drm_gem_shmem_test_madvise() 297 KUNIT_ASSERT_EQ(test, shmem->madv, 1); in drm_gem_shmem_test_madvise() 302 KUNIT_ASSERT_EQ(test, shmem->madv, -1); in drm_gem_shmem_test_madvise() 307 KUNIT_ASSERT_EQ(test, shmem->madv, -1); in drm_gem_shmem_test_madvise() 348 KUNIT_EXPECT_EQ(test, shmem->madv, -1); in drm_gem_shmem_test_purge()
|
| /linux/drivers/gpu/drm/i915/gem/ |
| H A D | i915_gem_shmem.c | 301 obj->mm.madv = __I915_MADV_PURGED; in shmem_truncate() 340 switch (obj->mm.madv) { in shmem_shrink() 360 GEM_BUG_ON(obj->mm.madv == __I915_MADV_PURGED); in __i915_gem_object_release_shmem() 362 if (obj->mm.madv == I915_MADV_DONTNEED) in __i915_gem_object_release_shmem() 393 obj->mm.dirty, obj->mm.madv == I915_MADV_WILLNEED); in i915_gem_object_put_pages_shmem() 436 if (obj->mm.madv != I915_MADV_WILLNEED) in shmem_pwrite()
|
| H A D | i915_gem_ttm.c | 429 if (obj->mm.madv == __I915_MADV_PURGED) in i915_ttm_purge() 458 obj->mm.madv = __I915_MADV_PURGED; in i915_ttm_purge() 487 switch (obj->mm.madv) { in i915_ttm_shrink() 611 WARN_ON_ONCE(obj->mm.madv == I915_MADV_WILLNEED); in i915_ttm_truncate() 638 if (!ret && obj->mm.madv != I915_MADV_WILLNEED) in i915_ttm_swap_notify() 972 if (obj->mm.madv == I915_MADV_WILLNEED) in i915_ttm_adjust_lru() 992 } else if (obj->mm.madv != I915_MADV_WILLNEED) { in i915_ttm_adjust_lru() 1061 if (obj->mm.madv != I915_MADV_WILLNEED) { in vm_fault_ttm()
|
| H A D | i915_gem_pages.c | 34 obj->mm.madv = I915_MADV_DONTNEED; in __i915_gem_object_set_pages() 91 if (obj->mm.madv != I915_MADV_WILLNEED) in __i915_gem_object_set_pages() 109 if (unlikely(obj->mm.madv != I915_MADV_WILLNEED)) { in ____i915_gem_object_get_pages() 225 obj->mm.madv = I915_MADV_WILLNEED; in __i915_gem_object_unset_pages()
|
| /linux/drivers/gpu/drm/panfrost/ |
| H A D | panfrost_drv.c | 485 if (args->madv == PANFROST_MADV_DONTNEED) { in panfrost_ioctl_madvise() 507 args->retained = drm_gem_shmem_madvise_locked(&bo->base, args->madv); in panfrost_ioctl_madvise() 510 if (args->madv == PANFROST_MADV_DONTNEED) in panfrost_ioctl_madvise() 513 else if (args->madv == PANFROST_MADV_WILLNEED) in panfrost_ioctl_madvise()
|
| /linux/include/uapi/drm/ |
| H A D | vc4_drm.h | 373 __u32 madv; member
|
| H A D | i915_drm.h | 1826 __u32 madv; member
|
| /linux/drivers/gpu/drm/i915/ |
| H A D | i915_drm_client.c | 68 obj->mm.madv == I915_MADV_DONTNEED) in obj_meminfo()
|
| /linux/drivers/gpu/drm/panthor/ |
| H A D | panthor_gem.c | |
| /linux/tools/include/uapi/drm/ |
| H A D | i915_drm.h | |