提交 f1acec93 编写于 作者: E Eric Anholt 提交者: Dave Airlie

drm/i915: Don't print to dmesg when taking signal during object_pin.

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: NEric Anholt <eric@anholt.net>
Signed-off-by: NDave Airlie <airlied@linux.ie>
上级 3c4fdcfb
...@@ -2491,7 +2491,8 @@ i915_gem_execbuffer(struct drm_device *dev, void *data, ...@@ -2491,7 +2491,8 @@ i915_gem_execbuffer(struct drm_device *dev, void *data,
/* error other than GTT full, or we've already tried again */ /* error other than GTT full, or we've already tried again */
if (ret != -ENOMEM || pin_tries >= 1) { 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; goto err;
} }
...@@ -2641,7 +2642,8 @@ i915_gem_object_pin(struct drm_gem_object *obj, uint32_t alignment) ...@@ -2641,7 +2642,8 @@ i915_gem_object_pin(struct drm_gem_object *obj, uint32_t alignment)
if (obj_priv->gtt_space == NULL) { if (obj_priv->gtt_space == NULL) {
ret = i915_gem_object_bind_to_gtt(obj, alignment); ret = i915_gem_object_bind_to_gtt(obj, alignment);
if (ret != 0) { if (ret != 0) {
DRM_ERROR("Failure to bind: %d", ret); if (ret != -ERESTARTSYS)
DRM_ERROR("Failure to bind: %d", ret);
return ret; return ret;
} }
} }
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册