Lines Matching defs:bo
53 struct radeon_bo *bo = container_of(mn, struct radeon_bo, notifier);
57 if (!bo->tbo.ttm || !radeon_ttm_tt_is_bound(bo->tbo.bdev, bo->tbo.ttm))
63 r = radeon_bo_reserve(bo, true);
65 DRM_ERROR("(%ld) failed to reserve user bo\n", r);
69 r = dma_resv_wait_timeout(bo->tbo.base.resv, DMA_RESV_USAGE_BOOKKEEP,
72 DRM_ERROR("(%ld) failed to wait for user bo\n", r);
74 radeon_ttm_placement_from_domain(bo, RADEON_GEM_DOMAIN_CPU);
75 r = ttm_bo_validate(&bo->tbo, &bo->placement, &ctx);
77 DRM_ERROR("(%ld) failed to validate user bo\n", r);
79 radeon_bo_unreserve(bo);
90 * @bo: radeon buffer object
96 int radeon_mn_register(struct radeon_bo *bo, unsigned long addr)
100 ret = mmu_interval_notifier_insert(&bo->notifier, current->mm, addr,
101 radeon_bo_size(bo), &radeon_mn_ops);
111 mmu_interval_read_begin(&bo->notifier);
118 * @bo: radeon buffer object
122 void radeon_mn_unregister(struct radeon_bo *bo)
124 if (!bo->notifier.mm)
126 mmu_interval_notifier_remove(&bo->notifier);
127 bo->notifier.mm = NULL;