diff options
| author | Greg Kroah-Hartman <gregkh@suse.de> | 2011-11-26 19:46:19 -0800 | 
|---|---|---|
| committer | Greg Kroah-Hartman <gregkh@suse.de> | 2011-11-26 19:46:48 -0800 | 
| commit | 47b649590dbbea182f854d6470ee1cd59b7b7684 (patch) | |
| tree | a2de3610f9c5e963234cffb35b9d559aab62e164 /drivers/gpu/drm/i915/i915_gem.c | |
| parent | 3af5154a869bc278a829bb03e65a709480e821b0 (diff) | |
| parent | caca6a03d365883564885f2c1da3e88dcf65d139 (diff) | |
| download | olio-linux-3.10-47b649590dbbea182f854d6470ee1cd59b7b7684.tar.xz olio-linux-3.10-47b649590dbbea182f854d6470ee1cd59b7b7684.zip  | |
Merge 3.2-rc3 into usb-linus
This pulls in the latest USB bugfixes and helps a few of the drivers
merge nicer in the future due to changes in both branches.
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Diffstat (limited to 'drivers/gpu/drm/i915/i915_gem.c')
| -rw-r--r-- | drivers/gpu/drm/i915/i915_gem.c | 14 | 
1 files changed, 8 insertions, 6 deletions
diff --git a/drivers/gpu/drm/i915/i915_gem.c b/drivers/gpu/drm/i915/i915_gem.c index 6651c36b6e8..8359dc77704 100644 --- a/drivers/gpu/drm/i915/i915_gem.c +++ b/drivers/gpu/drm/i915/i915_gem.c @@ -1396,7 +1396,7 @@ i915_gem_mmap_gtt(struct drm_file *file,  	if (obj->base.size > dev_priv->mm.gtt_mappable_end) {  		ret = -E2BIG; -		goto unlock; +		goto out;  	}  	if (obj->madv != I915_MADV_WILLNEED) { @@ -1745,7 +1745,7 @@ static void i915_gem_reset_fences(struct drm_device *dev)  	struct drm_i915_private *dev_priv = dev->dev_private;  	int i; -	for (i = 0; i < 16; i++) { +	for (i = 0; i < dev_priv->num_fence_regs; i++) {  		struct drm_i915_fence_reg *reg = &dev_priv->fence_regs[i];  		struct drm_i915_gem_object *obj = reg->obj; @@ -3512,9 +3512,11 @@ i915_gem_busy_ioctl(struct drm_device *dev, void *data,  			 * so emit a request to do so.  			 */  			request = kzalloc(sizeof(*request), GFP_KERNEL); -			if (request) +			if (request) {  				ret = i915_add_request(obj->ring, NULL, request); -			else +				if (ret) +					kfree(request); +			} else  				ret = -ENOMEM;  		} @@ -3613,7 +3615,7 @@ struct drm_i915_gem_object *i915_gem_alloc_object(struct drm_device *dev,  	obj->base.write_domain = I915_GEM_DOMAIN_CPU;  	obj->base.read_domains = I915_GEM_DOMAIN_CPU; -	if (IS_GEN6(dev)) { +	if (IS_GEN6(dev) || IS_GEN7(dev)) {  		/* On Gen6, we can have the GPU use the LLC (the CPU  		 * cache) for about a 10% performance improvement  		 * compared to uncached.  Graphics requests other than @@ -3877,7 +3879,7 @@ i915_gem_load(struct drm_device *dev)  	INIT_LIST_HEAD(&dev_priv->mm.gtt_list);  	for (i = 0; i < I915_NUM_RINGS; i++)  		init_ring_lists(&dev_priv->ring[i]); -	for (i = 0; i < 16; i++) +	for (i = 0; i < I915_MAX_NUM_FENCES; i++)  		INIT_LIST_HEAD(&dev_priv->fence_regs[i].lru_list);  	INIT_DELAYED_WORK(&dev_priv->mm.retire_work,  			  i915_gem_retire_work_handler);  |