| From f1acec933848219c402c165686677b1c307407f8 Mon Sep 17 00:00:00 2001 |
| From: Eric Anholt <eric@anholt.net> |
| Date: Fri, 19 Dec 2008 14:47:48 -0800 |
| Subject: drm/i915: Don't print to dmesg when taking signal during object_pin. |
| |
| From: Eric Anholt <eric@anholt.net> |
| |
| commit f1acec933848219c402c165686677b1c307407f8 upstream. |
| |
| This showed up in logs where people had a hung chip, so pinning was blocked |
| on the chip unpinning other buffers, and the X Server took its scheduler |
| signal during that time. |
| |
| Signed-off-by: Eric Anholt <eric@anholt.net> |
| Signed-off-by: Dave Airlie <airlied@linux.ie> |
| Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de> |
| |
| --- |
| drivers/gpu/drm/i915/i915_gem.c | 6 ++++-- |
| 1 file changed, 4 insertions(+), 2 deletions(-) |
| |
| --- a/drivers/gpu/drm/i915/i915_gem.c |
| +++ b/drivers/gpu/drm/i915/i915_gem.c |
| @@ -2029,7 +2029,8 @@ i915_gem_execbuffer(struct drm_device *d |
| |
| /* error other than GTT full, or we've already tried again */ |
| if (ret != -ENOMEM || pin_tries >= 1) { |
| - DRM_ERROR("Failed to pin buffers %d\n", ret); |
| + if (ret != -ERESTARTSYS) |
| + DRM_ERROR("Failed to pin buffers %d\n", ret); |
| goto err; |
| } |
| |
| @@ -2179,7 +2180,8 @@ i915_gem_object_pin(struct drm_gem_objec |
| if (obj_priv->gtt_space == NULL) { |
| ret = i915_gem_object_bind_to_gtt(obj, alignment); |
| if (ret != 0) { |
| - DRM_ERROR("Failure to bind: %d", ret); |
| + if (ret != -ERESTARTSYS) |
| + DRM_ERROR("Failure to bind: %d", ret); |
| return ret; |
| } |
| } |