diff options
Diffstat (limited to 'drivers/gpu/drm/ttm/ttm_bo_vm.c')
| -rw-r--r-- | drivers/gpu/drm/ttm/ttm_bo_vm.c | 7 | 
1 files changed, 5 insertions, 2 deletions
diff --git a/drivers/gpu/drm/ttm/ttm_bo_vm.c b/drivers/gpu/drm/ttm/ttm_bo_vm.c index 40b75032ea4..33de7637c0c 100644 --- a/drivers/gpu/drm/ttm/ttm_bo_vm.c +++ b/drivers/gpu/drm/ttm/ttm_bo_vm.c @@ -101,6 +101,9 @@ static int ttm_bo_vm_fault(struct vm_area_struct *vma, struct vm_fault *vmf)  		return VM_FAULT_NOPAGE;  	} +	if (bdev->driver->fault_reserve_notify) +		bdev->driver->fault_reserve_notify(bo); +  	/*  	 * Wait for buffer data in transit, due to a pipelined  	 * move. @@ -327,7 +330,7 @@ ssize_t ttm_bo_io(struct ttm_bo_device *bdev, struct file *filp,  		goto out_unref;  	kmap_offset = dev_offset - bo->vm_node->start; -	if (unlikely(kmap_offset) >= bo->num_pages) { +	if (unlikely(kmap_offset >= bo->num_pages)) {  		ret = -EFBIG;  		goto out_unref;  	} @@ -401,7 +404,7 @@ ssize_t ttm_bo_fbdev_io(struct ttm_buffer_object *bo, const char __user *wbuf,  	bool dummy;  	kmap_offset = (*f_pos >> PAGE_SHIFT); -	if (unlikely(kmap_offset) >= bo->num_pages) +	if (unlikely(kmap_offset >= bo->num_pages))  		return -EFBIG;  	page_offset = *f_pos & ~PAGE_MASK;  |