Lines Matching refs:mapping
973 struct amdgpu_bo_va_mapping *mapping; in amdgpu_vm_bo_update() local
1033 list_for_each_entry(mapping, &bo_va->invalids, list) { in amdgpu_vm_bo_update()
1039 if (!(mapping->flags & AMDGPU_PTE_READABLE)) in amdgpu_vm_bo_update()
1041 if (!(mapping->flags & AMDGPU_PTE_WRITEABLE)) in amdgpu_vm_bo_update()
1045 amdgpu_gmc_get_vm_pte(adev, mapping, &update_flags); in amdgpu_vm_bo_update()
1047 trace_amdgpu_vm_bo_update(mapping); in amdgpu_vm_bo_update()
1050 resv, mapping->start, mapping->last, in amdgpu_vm_bo_update()
1051 update_flags, mapping->offset, in amdgpu_vm_bo_update()
1079 list_for_each_entry(mapping, &bo_va->valids, list) in amdgpu_vm_bo_update()
1080 trace_amdgpu_vm_bo_mapping(mapping); in amdgpu_vm_bo_update()
1182 struct amdgpu_bo_va_mapping *mapping, in amdgpu_vm_free_mapping() argument
1185 if (mapping->flags & AMDGPU_PTE_PRT) in amdgpu_vm_free_mapping()
1187 kfree(mapping); in amdgpu_vm_free_mapping()
1231 struct amdgpu_bo_va_mapping *mapping; in amdgpu_vm_clear_freed() local
1237 mapping = list_first_entry(&vm->freed, in amdgpu_vm_clear_freed()
1239 list_del(&mapping->list); in amdgpu_vm_clear_freed()
1242 mapping->start < AMDGPU_GMC_HOLE_START) in amdgpu_vm_clear_freed()
1246 mapping->start, mapping->last, in amdgpu_vm_clear_freed()
1249 amdgpu_vm_free_mapping(adev, vm, mapping, f); in amdgpu_vm_clear_freed()
1383 struct amdgpu_bo_va_mapping *mapping) in amdgpu_vm_bo_insert_map() argument
1388 mapping->bo_va = bo_va; in amdgpu_vm_bo_insert_map()
1389 list_add(&mapping->list, &bo_va->invalids); in amdgpu_vm_bo_insert_map()
1390 amdgpu_vm_it_insert(mapping, &vm->va); in amdgpu_vm_bo_insert_map()
1392 if (mapping->flags & AMDGPU_PTE_PRT) in amdgpu_vm_bo_insert_map()
1399 trace_amdgpu_vm_bo_map(bo_va, mapping); in amdgpu_vm_bo_insert_map()
1424 struct amdgpu_bo_va_mapping *mapping, *tmp; in amdgpu_vm_bo_map() local
1453 mapping = kmalloc(sizeof(*mapping), GFP_KERNEL); in amdgpu_vm_bo_map()
1454 if (!mapping) in amdgpu_vm_bo_map()
1457 mapping->start = saddr; in amdgpu_vm_bo_map()
1458 mapping->last = eaddr; in amdgpu_vm_bo_map()
1459 mapping->offset = offset; in amdgpu_vm_bo_map()
1460 mapping->flags = flags; in amdgpu_vm_bo_map()
1462 amdgpu_vm_bo_insert_map(adev, bo_va, mapping); in amdgpu_vm_bo_map()
1490 struct amdgpu_bo_va_mapping *mapping; in amdgpu_vm_bo_replace_map() local
1508 mapping = kmalloc(sizeof(*mapping), GFP_KERNEL); in amdgpu_vm_bo_replace_map()
1509 if (!mapping) in amdgpu_vm_bo_replace_map()
1514 kfree(mapping); in amdgpu_vm_bo_replace_map()
1521 mapping->start = saddr; in amdgpu_vm_bo_replace_map()
1522 mapping->last = eaddr; in amdgpu_vm_bo_replace_map()
1523 mapping->offset = offset; in amdgpu_vm_bo_replace_map()
1524 mapping->flags = flags; in amdgpu_vm_bo_replace_map()
1526 amdgpu_vm_bo_insert_map(adev, bo_va, mapping); in amdgpu_vm_bo_replace_map()
1549 struct amdgpu_bo_va_mapping *mapping; in amdgpu_vm_bo_unmap() local
1555 list_for_each_entry(mapping, &bo_va->valids, list) { in amdgpu_vm_bo_unmap()
1556 if (mapping->start == saddr) in amdgpu_vm_bo_unmap()
1560 if (&mapping->list == &bo_va->valids) { in amdgpu_vm_bo_unmap()
1563 list_for_each_entry(mapping, &bo_va->invalids, list) { in amdgpu_vm_bo_unmap()
1564 if (mapping->start == saddr) in amdgpu_vm_bo_unmap()
1568 if (&mapping->list == &bo_va->invalids) in amdgpu_vm_bo_unmap()
1572 list_del(&mapping->list); in amdgpu_vm_bo_unmap()
1573 amdgpu_vm_it_remove(mapping, &vm->va); in amdgpu_vm_bo_unmap()
1574 mapping->bo_va = NULL; in amdgpu_vm_bo_unmap()
1575 trace_amdgpu_vm_bo_unmap(bo_va, mapping); in amdgpu_vm_bo_unmap()
1578 list_add(&mapping->list, &vm->freed); in amdgpu_vm_bo_unmap()
1580 amdgpu_vm_free_mapping(adev, vm, mapping, in amdgpu_vm_bo_unmap()
1718 struct amdgpu_bo_va_mapping *mapping; in amdgpu_vm_bo_trace_cs() local
1723 for (mapping = amdgpu_vm_it_iter_first(&vm->va, 0, U64_MAX); mapping; in amdgpu_vm_bo_trace_cs()
1724 mapping = amdgpu_vm_it_iter_next(mapping, 0, U64_MAX)) { in amdgpu_vm_bo_trace_cs()
1725 if (mapping->bo_va && mapping->bo_va->base.bo) { in amdgpu_vm_bo_trace_cs()
1728 bo = mapping->bo_va->base.bo; in amdgpu_vm_bo_trace_cs()
1734 trace_amdgpu_vm_bo_cs(mapping); in amdgpu_vm_bo_trace_cs()
1751 struct amdgpu_bo_va_mapping *mapping, *next; in amdgpu_vm_bo_del() local
1777 list_for_each_entry_safe(mapping, next, &bo_va->valids, list) { in amdgpu_vm_bo_del()
1778 list_del(&mapping->list); in amdgpu_vm_bo_del()
1779 amdgpu_vm_it_remove(mapping, &vm->va); in amdgpu_vm_bo_del()
1780 mapping->bo_va = NULL; in amdgpu_vm_bo_del()
1781 trace_amdgpu_vm_bo_unmap(bo_va, mapping); in amdgpu_vm_bo_del()
1782 list_add(&mapping->list, &vm->freed); in amdgpu_vm_bo_del()
1784 list_for_each_entry_safe(mapping, next, &bo_va->invalids, list) { in amdgpu_vm_bo_del()
1785 list_del(&mapping->list); in amdgpu_vm_bo_del()
1786 amdgpu_vm_it_remove(mapping, &vm->va); in amdgpu_vm_bo_del()
1787 amdgpu_vm_free_mapping(adev, vm, mapping, in amdgpu_vm_bo_del()
2227 struct amdgpu_bo_va_mapping *mapping, *tmp; in amdgpu_vm_fini() local
2248 list_for_each_entry_safe(mapping, tmp, &vm->freed, list) { in amdgpu_vm_fini()
2249 if (mapping->flags & AMDGPU_PTE_PRT && prt_fini_needed) { in amdgpu_vm_fini()
2254 list_del(&mapping->list); in amdgpu_vm_fini()
2255 amdgpu_vm_free_mapping(adev, vm, mapping, NULL); in amdgpu_vm_fini()
2269 rbtree_postorder_for_each_entry_safe(mapping, tmp, in amdgpu_vm_fini()
2274 list_del(&mapping->list); in amdgpu_vm_fini()
2275 kfree(mapping); in amdgpu_vm_fini()