summaryrefslogtreecommitdiffstats
path: root/drm-intel-big-hammer.patch
blob: 97bb2e8cded93bda511a21846079a689783c7678 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
omgwtfbbqchainsaw?
---
 drivers/gpu/drm/i915/i915_gem.c |    5 +++++
 1 files changed, 5 insertions(+), 0 deletions(-)

diff --git a/drivers/gpu/drm/i915/i915_gem.c b/drivers/gpu/drm/i915/i915_gem.c
index 8eb8453..36fa9d7 100644
--- a/drivers/gpu/drm/i915/i915_gem.c
+++ b/drivers/gpu/drm/i915/i915_gem.c
@@ -3692,6 +3692,11 @@ i915_gem_do_execbuffer(struct drm_device *dev, void *data,
 	if (ret)
 		goto pre_mutex_err;
 
+	/* We don't get the flushing right for these chipsets, use the
+	 * big hammer for now to avoid random crashiness. */
+	if (IS_I85X(dev) || IS_I865G(dev))
+		wbinvd();
+
 	if (dev_priv->mm.suspended) {
 		mutex_unlock(&dev->struct_mutex);
 		ret = -EBUSY;