Browse Source

drm/i915: Warn before mmaping a purgeable buffer.

Only allow the user to mmap buffers that have not been marked as
purgeable.

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Chris Wilson 15 years ago
parent
commit
ab18282d58
1 changed files with 8 additions and 0 deletions
  1. 8 0
      drivers/gpu/drm/i915/i915_gem.c

+ 8 - 0
drivers/gpu/drm/i915/i915_gem.c

@@ -1431,6 +1431,14 @@ i915_gem_mmap_gtt_ioctl(struct drm_device *dev, void *data,
 
 	obj_priv = obj->driver_private;
 
+	if (obj_priv->madv != I915_MADV_WILLNEED) {
+		DRM_ERROR("Attempting to mmap a purgeable buffer\n");
+		drm_gem_object_unreference(obj);
+		mutex_unlock(&dev->struct_mutex);
+		return -EINVAL;
+	}
+
+
 	if (!obj_priv->mmap_offset) {
 		ret = i915_gem_create_mmap_offset(obj);
 		if (ret) {