From mboxrd@z Thu Jan 1 00:00:00 1970 From: Lyude Subject: [PATCH 0/2] drm/i915/skl: Fix (most) pipe underruns, properly this time Date: Tue, 19 Jul 2016 12:30:54 -0400 Message-ID: <1468945856-23126-1-git-send-email-cpaul@redhat.com> Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: QUOTED-PRINTABLE Return-path: Sender: stable-owner@vger.kernel.org To: intel-gfx@lists.freedesktop.org Cc: Lyude , stable@vger.kernel.org, =?UTF-8?q?Ville=20Syrj=C3=A4l=C3=A4?= , Daniel Vetter , Radhakrishna Sripada , Matt Roper , Jani Nikula , David Airlie , "open list:INTEL DRM DRIVERS excluding Poulsbo, Moorestow..., linux-kernel@vger.kernel.org open list" List-Id: dri-devel@lists.freedesktop.org Unfortunately as a few of you are aware, Skylake is still very prone to= pipe underruns. Most of this comes from not doing things atomically enough (= e.g. needing to ensure that we update watermarks with other plane attributes= , not forcefully flushing pipes until we need to, etc.). Now that I've finall= y got a grasp on how double buffered registers, arming registers, etc. works on= skl, I've written up patches that fix most of the pipe underruns on Skylake. When I say "most", I'm referring to the fact that I still seem to be ab= le to reproduce pipe underruns, but this seems to be strictly exclusive to wh= en pipes are being disabled. This means things *still* need to be made more atom= ic (sigh), but at least this is a start. Testing this series with a chamelium[1], mainly so I could heavily stre= ss test the hotplugging of displays, I'm no longer able to reproduce pipe under= runs when enabling another pipe. I've also tried reproducing underruns using= xdotool to move the cursor in X from one monitor to another as quickly as possi= ble (e.g. > 60 fps), and am no longer able to reproduce underruns there eit= her with this patch series. Signed-off-by: Lyude Paul Cc: stable@vger.kernel.org Cc: Ville Syrj=C3=A4l=C3=A4 Cc: Daniel Vetter Cc: Radhakrishna Sripada Cc: Hans de Goede Cc: Matt Roper [1]: https://www.chromium.org/chromium-os/testing/chamelium Lyude (2): drm/i915/skl: Update plane watermarks atomically during plane updates drm/i915/skl: Don't mark pipes as dirty unless we've added/removed pipes drivers/gpu/drm/i915/intel_display.c | 47 ++++++++++++++++++++++++++++= ++++++++ drivers/gpu/drm/i915/intel_pm.c | 31 +++++++++--------------- 2 files changed, 59 insertions(+), 19 deletions(-) --=20 2.7.4