drm/i915: Disable semaphores by default on SNB
authorKeith Packard <keithp@keithp.com>
Tue, 27 Dec 2011 01:02:10 +0000 (17:02 -0800)
committerLinus Torvalds <torvalds@linux-foundation.org>
Tue, 27 Dec 2011 05:07:26 +0000 (21:07 -0800)
Semaphores still cause problems on some machines:

> From Udo Steinberg:
>
> With Linux-3.2-rc6 I'm frequently seeing GPU hangs when large amounts of
> text scroll in an xterm, such as when extracting a tar archive. Such as this
> one (note the timestamps):
>
>  I can reproduce it fairly easily with something
>  as simple as:
>
>   while true; do dmesg; done

This patch turns them off on SNB while leaving them on for IVB.

Reported-by: Udo Steinberg <udo@hypervisor.org>
Cc: Daniel Vetter <daniel@ffwll.ch>
Cc: Eugeni Dodonov <eugeni@dodonov.net>
Signed-off-by: Keith Packard <keithp@keithp.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
drivers/gpu/drm/i915/i915_gem_execbuffer.c

index c681dc149d2a121fe55354143f50465d6b0b75d6..b9da8900ae4eaef10c12f2d68da79a226f9f3260 100644 (file)
@@ -756,9 +756,9 @@ intel_enable_semaphores(struct drm_device *dev)
        if (i915_semaphores >= 0)
                return i915_semaphores;
 
-       /* Enable semaphores on SNB when IO remapping is off */
+       /* Disable semaphores on SNB */
        if (INTEL_INFO(dev)->gen == 6)
-               return !intel_iommu_enabled;
+               return 0;
 
        return 1;
 }