drm/i915: Bail out early on gen6_signal if no semaphores
authorMika Kuoppala <mika.kuoppala@linux.intel.com>
Thu, 15 May 2014 17:58:07 +0000 (20:58 +0300)
committerDaniel Vetter <daniel.vetter@ffwll.ch>
Thu, 15 May 2014 21:14:13 +0000 (23:14 +0200)
If we dont have semaphores enabled, we allocate 4
dwords for signalling. But end up emitting more regardless.

Fix this by bailing out early if semaphores are not enabled.

Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=78274
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=78283
Signed-off-by: Mika Kuoppala <mika.kuoppala@intel.com>
Reviewed-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
drivers/gpu/drm/i915/intel_ringbuffer.c

index 3974e827c4720448da31f6894ee8e5caf27f380c..93b4062481de79440467e8b67cf15a586523844f 100644 (file)
@@ -684,6 +684,8 @@ static int gen6_signal(struct intel_ring_buffer *signaller,
 #define MBOX_UPDATE_DWORDS 4
        if (i915_semaphore_is_enabled(dev))
                num_dwords += ((I915_NUM_RINGS-1) * MBOX_UPDATE_DWORDS);
+       else
+               return intel_ring_begin(signaller, num_dwords);
 
        ret = intel_ring_begin(signaller, num_dwords);
        if (ret)