drm/i915: Treat using a purged buffer as a source of EFAULT
Since a purged buffer is one without any associated pages, attempting to use it should generate EFAULT rather than EINVAL, as it is not strictly an invalid parameter. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk> Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
This commit is contained in:
parent
45d678173a
commit
8c99e57d39
|
@ -1619,7 +1619,7 @@ i915_gem_mmap_gtt(struct drm_file *file,
|
|||
|
||||
if (obj->madv != I915_MADV_WILLNEED) {
|
||||
DRM_ERROR("Attempting to mmap a purgeable buffer\n");
|
||||
ret = -EINVAL;
|
||||
ret = -EFAULT;
|
||||
goto out;
|
||||
}
|
||||
|
||||
|
@ -1973,7 +1973,7 @@ i915_gem_object_get_pages(struct drm_i915_gem_object *obj)
|
|||
|
||||
if (obj->madv != I915_MADV_WILLNEED) {
|
||||
DRM_ERROR("Attempting to obtain a purgeable object\n");
|
||||
return -EINVAL;
|
||||
return -EFAULT;
|
||||
}
|
||||
|
||||
BUG_ON(obj->pages_pin_count);
|
||||
|
@ -3917,7 +3917,7 @@ i915_gem_pin_ioctl(struct drm_device *dev, void *data,
|
|||
|
||||
if (obj->madv != I915_MADV_WILLNEED) {
|
||||
DRM_ERROR("Attempting to pin a purgeable buffer\n");
|
||||
ret = -EINVAL;
|
||||
ret = -EFAULT;
|
||||
goto out;
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue