]> git.openfabrics.org - ~shefty/rdma-dev.git/commitdiff
drm/i915: Remove the upper limit on the bo size for mapping into the CPU domain
authorChris Wilson <chris@chris-wilson.co.uk>
Sun, 29 Jan 2012 16:52:05 +0000 (16:52 +0000)
committerDaniel Vetter <daniel.vetter@ffwll.ch>
Mon, 30 Jan 2012 16:54:35 +0000 (17:54 +0100)
The original intention of comparing the bo against the mappable GTT
limits was to prevent a subsequent faulting of the bo into the GTT from
clearing the entire GTT in vain. However, that was clearly a cut'n'paste
mistake as a CPU mapping never binds the bo into the aperture. Whilst
there may be some merit to limiting the maximum size of the bo to
something that can be utilized by the GPU, that limit itself does not
belong as a safeguard to mmapping the bo, so remove the check entirely.

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Reviewed-by: Eric Anholt <eric@anholt.net>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
drivers/gpu/drm/i915/i915_gem.c

index 721924150d0213393f1c4c8d72c4feb9604d092d..df23c62734135705947f8aaa00147cdd0d0bd7ae 100644 (file)
@@ -1141,7 +1141,6 @@ int
 i915_gem_mmap_ioctl(struct drm_device *dev, void *data,
                    struct drm_file *file)
 {
-       struct drm_i915_private *dev_priv = dev->dev_private;
        struct drm_i915_gem_mmap *args = data;
        struct drm_gem_object *obj;
        unsigned long addr;
@@ -1153,11 +1152,6 @@ i915_gem_mmap_ioctl(struct drm_device *dev, void *data,
        if (obj == NULL)
                return -ENOENT;
 
-       if (obj->size > dev_priv->mm.gtt_mappable_end) {
-               drm_gem_object_unreference_unlocked(obj);
-               return -E2BIG;
-       }
-
        down_write(&current->mm->mmap_sem);
        addr = do_mmap(obj->filp, 0, args->size,
                       PROT_READ | PROT_WRITE, MAP_SHARED,