Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 194a3364 authored by monk.liu's avatar monk.liu Committed by Alex Deucher
Browse files

drm/amdgpu: add new parameter to seperate map and unmap

parent e722b71a
Loading
Loading
Loading
Loading
+5 −3
Original line number Diff line number Diff line
@@ -449,7 +449,7 @@ int amdgpu_gem_metadata_ioctl(struct drm_device *dev, void *data,
 * vital here, so they are not reported back to userspace.
 */
static void amdgpu_gem_va_update_vm(struct amdgpu_device *adev,
				    struct amdgpu_bo_va *bo_va)
				    struct amdgpu_bo_va *bo_va, uint32_t operation)
{
	struct ttm_validate_buffer tv, *entry;
	struct amdgpu_bo_list_entry *vm_bos;
@@ -485,6 +485,8 @@ static void amdgpu_gem_va_update_vm(struct amdgpu_device *adev,
	if (r)
		goto error_unlock;


	if (operation == AMDGPU_VA_OP_MAP)
		r = amdgpu_vm_bo_update(adev, bo_va, &bo_va->bo->tbo.mem);

error_unlock:
@@ -580,7 +582,7 @@ int amdgpu_gem_va_ioctl(struct drm_device *dev, void *data,
	}

	if (!r && !(args->flags & AMDGPU_VM_DELAY_UPDATE))
		amdgpu_gem_va_update_vm(adev, bo_va);
		amdgpu_gem_va_update_vm(adev, bo_va, args->operation);

	drm_gem_object_unreference_unlocked(gobj);
	return r;