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:
Chris Wilson 2014-01-31 11:34:58 +00:00 committed by Daniel Vetter
parent 45d678173a
commit 8c99e57d39
1 changed files with 3 additions and 3 deletions

View File

@ -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;
}