2010-07-29 23:46:31 +00:00
|
|
|
diff --git a/drivers/gpu/drm/i915/i915_gem.c b/drivers/gpu/drm/i915/i915_gem.c
|
2010-11-16 05:19:59 +00:00
|
|
|
index 6da2c6d..f508b86 100644
|
2010-07-29 23:46:31 +00:00
|
|
|
--- a/drivers/gpu/drm/i915/i915_gem.c
|
|
|
|
+++ b/drivers/gpu/drm/i915/i915_gem.c
|
2010-11-16 05:19:59 +00:00
|
|
|
@@ -3738,6 +3738,11 @@ i915_gem_do_execbuffer(struct drm_device *dev, void *data,
|
|
|
|
if (ret)
|
|
|
|
goto pre_mutex_err;
|
2010-07-29 23:46:31 +00:00
|
|
|
|
|
|
|
+ /* We don't get the flushing right for these chipsets, use the
|
2010-11-16 05:19:59 +00:00
|
|
|
+ * big hammer for now to avoid random crashiness. */
|
2010-07-29 23:46:31 +00:00
|
|
|
+ if (IS_I85X(dev) || IS_I865G(dev))
|
|
|
|
+ wbinvd();
|
|
|
|
+
|
2010-11-16 05:19:59 +00:00
|
|
|
if (dev_priv->mm.suspended) {
|
|
|
|
mutex_unlock(&dev->struct_mutex);
|
|
|
|
ret = -EBUSY;
|