All of lore.kernel.org
 help / color / mirror / Atom feed
From: Daniel Vetter <daniel@ffwll.ch>
To: "Kumar, Shobhit" <shobhit.kumar@linux.intel.com>
Cc: Kalyan Kondapally <kalyan.kondapally@intel.com>,
	intel-gfx@lists.freedesktop.org
Subject: Re: [PATCH] drm/i915/skl: Increase ddb blocks to support large cursor sizes
Date: Tue, 5 Jan 2016 11:14:39 +0100	[thread overview]
Message-ID: <20160105101439.GQ8076@phenom.ffwll.local> (raw)
In-Reply-To: <568A782A.60305@linux.intel.com>

On Mon, Jan 04, 2016 at 07:18:26PM +0530, Kumar, Shobhit wrote:
> On 12/23/2015 08:22 AM, Kumar, Shobhit wrote:
> >On 12/21/2015 05:39 PM, Daniel Vetter wrote:
> >>On Fri, Dec 18, 2015 at 07:24:19AM -0800, Matt Roper wrote:
> >>>On Fri, Dec 18, 2015 at 07:14:17AM -0800, Matt Roper wrote:
> >>>>On Fri, Dec 18, 2015 at 05:10:12PM +0200, Ville Syrjälä wrote:
> >>>>>On Fri, Dec 18, 2015 at 06:58:58AM -0800, Matt Roper wrote:
> >>>>>>On Fri, Dec 18, 2015 at 12:35:47PM +0200, Ville Syrjälä wrote:
> >>>>>>>On Wed, Dec 16, 2015 at 07:06:20PM -0800, Radhakrishna Sripada
> >>>>>>>wrote:
> >>>>>>>>Original value of 32 blocks is not sufficient when using cursor
> >>>>>>>>size of
> >>>>>>>>256x256 causing FIFO underruns when the reworked wm
> >>>>>>>>caluclations in
> >>>>>>>>
> >>>>>>>>commit 024c9045221fe45482863c47c4b4c47d37f97cbf
> >>>>>>>>Author: Matt Roper <matthew.d.roper@intel.com>
> >>>>>>>>Date:   Thu Sep 24 15:53:11 2015 -0700
> >>>>>>>>
> >>>>>>>>     drm/i915/skl: Eliminate usage of pipe_wm_parameters from
> >>>>>>>>SKL-style WM (v4)
> >>>>>>>
> >>>>>>>Well that commit is obviously incorrect. It's now using the pipe src
> >>>>>>>width as the plane width for all planes.
> >>>>>>>
> >>>>>>
> >>>>>>Yeah, we already noted that bug in another email thread, but decided
> >>>>>>that it was unrelated to the problems Radhakrishna is facing.
> >>>>>>Radhakrishna is only using a cursor (which doesn't use that buggy
> >>>>>>function)
> >>>>>
> >>>>>Pop quiz: what does it use then?
> >>>>
> >>>>All non-cursor planes (i.e., primary+sprite).  Cursors use a fixed DDB
> >>>>allocation (currently 32 blocks as suggested by bspec, but
> >>>>Radhakrishna's testing has found this to be too small, so his patch
> >>>>here
> >>>>is bumping that number up.
> >>>>
> >>>
> >>>To elaborate on this some more, we have some suspicions about why the
> >>>bspec-suggested 32 blocks might not be enough.  There's some new
> >>>workaround information in the bspec about sometimes needing to disable
> >>>the system agent (SAGV) on non-BXT gen9, depending on the configuration
> >>>and that's not something that's been implemented in our driver code yet.
> >>>There's also another new workaround that checks raw system memory
> >>>bandwidth and adjusts watermark programming that hasn't been implemented
> >>>yet either.  It could be that one of those two missing workarounds is
> >>>the true culprit, but Radhakrishna's patch here looks like a reasonable
> >>>short-term workaround; my main worry is that if he needs to bump the
> >>>hardcoded 32 up to to 52 for the single pipe case, he might also need to
> >>>bump the hardcoded 8 up as well for the multi-pipe case; I don't think
> >>>anyone has tested that yet (and this seems to be a SKL-specific problem,
> >>>so I can't reproduce it on my BXT).
> >>
> >>This needs at least a very big comment that we're just hacking around
> >>with
> >>duct-tape. Also allocating DDB shouldn't matter for correctness, as long
> >>as we compute the WM values correctly. I wonder how this fixes anything
> >>really (except making it a bit harder to hit perhaps due to the enlarged
> >>buffering it affords for the cursor).
> >
> >Agree Daniel, but in our detailed testing this is found to have fixed
> >reliably all known flickers. I recommend to have a detailed comment and
> >*put* the duct-tape. I can have a rerun of detailed tests again to
> >ensure that its indeed fixing everything.
> >
> >>
> >>Imo better to just implement the other workarounds first, then see what's
> >>left.
> >
> >I know there are few known workarounds pending. Lets continue
> >implementing them and more. But with Matt's patch not fixing the issue,
> >lets take this as an immediate short term fix and come back to remove
> >the duct-tape when we have correct fix.
> 
> I experimented and found that reverting this patch but having arbitrated
> display bandwidth based workaround to increase latency values for all levels
> is fixing the flicker. Will be working on this along with Mahesh, unless
> Matt, you have a patch for this already.

Excellent, really happy that we can go ahead with a reasonable looking fix
right away here.

Thanks, Daniel
-- 
Daniel Vetter
Software Engineer, Intel Corporation
http://blog.ffwll.ch
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/intel-gfx

  reply	other threads:[~2016-01-05 10:14 UTC|newest]

Thread overview: 14+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-12-17  3:06 [PATCH] drm/i915/skl: Increase ddb blocks to support large cursor sizes Radhakrishna Sripada
2015-12-18 10:01 ` Jani Nikula
2015-12-18 10:35 ` Ville Syrjälä
2015-12-18 14:58   ` Matt Roper
2015-12-18 15:10     ` Ville Syrjälä
2015-12-18 15:14       ` Matt Roper
2015-12-18 15:24         ` Matt Roper
2015-12-21 12:09           ` Daniel Vetter
2015-12-23  2:52             ` Kumar, Shobhit
2016-01-04 13:48               ` Kumar, Shobhit
2016-01-05 10:14                 ` Daniel Vetter [this message]
2016-02-16 10:14                   ` Kumar, Shobhit
2016-02-18  8:28                     ` Kumar, Shobhit
2015-12-18 15:34         ` Ville Syrjälä

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20160105101439.GQ8076@phenom.ffwll.local \
    --to=daniel@ffwll.ch \
    --cc=intel-gfx@lists.freedesktop.org \
    --cc=kalyan.kondapally@intel.com \
    --cc=shobhit.kumar@linux.intel.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.