Lines Matching refs:placement

86 					struct ttm_placement *placement)  in ttm_bo_mem_space_debug()  argument
93 for (i = 0; i < placement->num_placement; i++) { in ttm_bo_mem_space_debug()
94 ret = ttm_mem_type_from_place(&placement->placement[i], in ttm_bo_mem_space_debug()
99 i, placement->placement[i].flags, mem_type); in ttm_bo_mem_space_debug()
171 if (!(bo->mem.placement & TTM_PL_FLAG_NO_EVICT)) { in ttm_bo_add_to_lru()
289 ((mem->placement & bo->mem.placement & TTM_PL_MASK_CACHING) == 0)) { in ttm_bo_handle_move_mem()
309 ret = ttm_tt_set_placement_caching(bo->ttm, mem->placement); in ttm_bo_handle_move_mem()
356 ret = bdev->driver->invalidate_caches(bdev, bo->mem.placement); in ttm_bo_handle_move_mem()
366 bo->cur_placement = bo->mem.placement; in ttm_bo_handle_move_mem()
454 if (bo->mem.placement & TTM_PL_FLAG_NO_EVICT) { in ttm_bo_cleanup_refs_or_queue()
455 bo->mem.placement &= ~TTM_PL_FLAG_NO_EVICT; in ttm_bo_cleanup_refs_or_queue()
664 struct ttm_placement placement; in ttm_bo_evict() local
683 placement.num_placement = 0; in ttm_bo_evict()
684 placement.num_busy_placement = 0; in ttm_bo_evict()
685 bdev->driver->evict_flags(bo, &placement); in ttm_bo_evict()
686 ret = ttm_bo_mem_space(bo, &placement, &evict_mem, interruptible, in ttm_bo_evict()
692 ttm_bo_mem_space_debug(bo, &placement); in ttm_bo_evict()
863 struct ttm_placement *placement, in ttm_bo_mem_space() argument
878 for (i = 0; i < placement->num_placement; ++i) { in ttm_bo_mem_space()
879 const struct ttm_place *place = &placement->placement[i]; in ttm_bo_mem_space()
895 cur_flags = ttm_bo_select_caching(man, bo->mem.placement, in ttm_bo_mem_space()
917 mem->placement = cur_flags; in ttm_bo_mem_space()
921 for (i = 0; i < placement->num_busy_placement; ++i) { in ttm_bo_mem_space()
922 const struct ttm_place *place = &placement->busy_placement[i]; in ttm_bo_mem_space()
934 cur_flags = ttm_bo_select_caching(man, bo->mem.placement, in ttm_bo_mem_space()
945 mem->placement = cur_flags; in ttm_bo_mem_space()
953 mem->placement = cur_flags; in ttm_bo_mem_space()
970 struct ttm_placement *placement, in ttm_bo_move_buffer() argument
995 ret = ttm_bo_mem_space(bo, placement, &mem, in ttm_bo_move_buffer()
1007 static bool ttm_bo_mem_compat(struct ttm_placement *placement, in ttm_bo_mem_compat() argument
1013 for (i = 0; i < placement->num_placement; i++) { in ttm_bo_mem_compat()
1014 const struct ttm_place *heap = &placement->placement[i]; in ttm_bo_mem_compat()
1021 if ((*new_flags & mem->placement & TTM_PL_MASK_CACHING) && in ttm_bo_mem_compat()
1022 (*new_flags & mem->placement & TTM_PL_MASK_MEM)) in ttm_bo_mem_compat()
1026 for (i = 0; i < placement->num_busy_placement; i++) { in ttm_bo_mem_compat()
1027 const struct ttm_place *heap = &placement->busy_placement[i]; in ttm_bo_mem_compat()
1034 if ((*new_flags & mem->placement & TTM_PL_MASK_CACHING) && in ttm_bo_mem_compat()
1035 (*new_flags & mem->placement & TTM_PL_MASK_MEM)) in ttm_bo_mem_compat()
1043 struct ttm_placement *placement, in ttm_bo_validate() argument
1054 if (!ttm_bo_mem_compat(placement, &bo->mem, &new_flags)) { in ttm_bo_validate()
1055 ret = ttm_bo_move_buffer(bo, placement, interruptible, in ttm_bo_validate()
1064 ttm_flag_masked(&bo->mem.placement, new_flags, in ttm_bo_validate()
1083 struct ttm_placement *placement, in ttm_bo_init() argument
1139 bo->mem.placement = (TTM_PL_FLAG_SYSTEM | TTM_PL_FLAG_CACHED); in ttm_bo_init()
1171 ret = ttm_bo_validate(bo, placement, interruptible, false); in ttm_bo_init()
1215 struct ttm_placement *placement, in ttm_bo_create() argument
1230 ret = ttm_bo_init(bdev, bo, size, type, placement, page_alignment, in ttm_bo_create()
1511 if (mem->placement & TTM_PL_FLAG_CACHED) in ttm_mem_reg_is_pci()
1659 if ((bo->mem.placement & swap_placement) != swap_placement) { in ttm_bo_swapout()
1664 evict_mem.placement = TTM_PL_FLAG_SYSTEM | TTM_PL_FLAG_CACHED; in ttm_bo_swapout()