diff options
Diffstat (limited to 'drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c')
| -rw-r--r-- | drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c | 7 | 
1 files changed, 5 insertions, 2 deletions
diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c index 887483b8b818..dcaf691f56b5 100644 --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c @@ -555,10 +555,13 @@ struct amdgpu_ttm_tt {  int amdgpu_ttm_tt_get_user_pages(struct ttm_tt *ttm, struct page **pages)  {  	struct amdgpu_ttm_tt *gtt = (void *)ttm; -	int write = !(gtt->userflags & AMDGPU_GEM_USERPTR_READONLY); +	unsigned int flags = 0;  	unsigned pinned = 0;  	int r; +	if (!(gtt->userflags & AMDGPU_GEM_USERPTR_READONLY)) +		flags |= FOLL_WRITE; +  	if (gtt->userflags & AMDGPU_GEM_USERPTR_ANONONLY) {  		/* check that we only use anonymous memory  		   to prevent problems with writeback */ @@ -581,7 +584,7 @@ int amdgpu_ttm_tt_get_user_pages(struct ttm_tt *ttm, struct page **pages)  		list_add(&guptask.list, >t->guptasks);  		spin_unlock(>t->guptasklock); -		r = get_user_pages(userptr, num_pages, write, 0, p, NULL); +		r = get_user_pages(userptr, num_pages, flags, p, NULL);  		spin_lock(>t->guptasklock);  		list_del(&guptask.list);  | 
