From: Matt Roper <matthew.d.roper@intel.com>
To: Paulo Zanoni <przanoni@gmail.com>
Cc: intel-gfx@lists.freedesktop.org, Paulo Zanoni <paulo.r.zanoni@intel.com>
Subject: Re: [RFC] drm/i915: don't wait_for_vblank if the CRTC is disabled
Date: Wed, 18 Mar 2015 15:01:22 -0700 [thread overview]
Message-ID: <20150318220122.GG31220@intel.com> (raw)
In-Reply-To: <1426706107-1695-1-git-send-email-przanoni@gmail.com>
On Wed, Mar 18, 2015 at 04:15:07PM -0300, Paulo Zanoni wrote:
> From: Paulo Zanoni <paulo.r.zanoni@intel.com>
>
> Otherwise we'll get a WARN from drm_wait_one_vblank() saying that
> vblanks are not available (since they were already disabled in
> crtc_disable()).
>
> This is certainly a regresison, but QA couldn't bisect it due to
> other regressions breaking the bisect.
>
> Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=89550
> Testcase: igt/pm_rpm/legacy-planes
> Testcase: igt/pm_rpm/legacy-planes-dpms
> Testcase: igt/pm_rpm/universal-planes
> Testcase: igt/pm_rpm/universal-planes-dpms
> Cc: Ville Syrjälä <ville.syrjala@linux.intel.com>
> Cc: Matt Roper <matthew.d.roper@intel.com>
> Signed-off-by: Paulo Zanoni <paulo.r.zanoni@intel.com>
> ---
> drivers/gpu/drm/i915/intel_display.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
>
> I'm not really sure if this is the best way to fix the regression. Ville and/or
> Matt should provide some comments here.
>
This will definitely fix the problem (we shouldn't be waiting for vblank
with a disabled CRTC!), but I think the true bug in our code is that our
sprite commit function is setting some bits that should have been set
back in the 'check' phase under the 'if (intel_crtc->active)' branch.
I'll supply a patch shortly that I think should fix how we got into this
situation in the first place. The whole 'wait_for_vblank' flag is
something we should be able to get rid of completely once I finish the
atomic watermark work.
Matt
>
> diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c
> index f1c0295..f2f7e81 100644
> --- a/drivers/gpu/drm/i915/intel_display.c
> +++ b/drivers/gpu/drm/i915/intel_display.c
> @@ -12193,7 +12193,7 @@ static void intel_finish_crtc_commit(struct drm_crtc *crtc)
>
> intel_runtime_pm_put(dev_priv);
>
> - if (intel_crtc->atomic.wait_vblank)
> + if (intel_crtc->active && intel_crtc->atomic.wait_vblank)
> intel_wait_for_vblank(dev, intel_crtc->pipe);
>
> intel_frontbuffer_flip(dev, intel_crtc->atomic.fb_bits);
> --
> 2.1.4
>
--
Matt Roper
Graphics Software Engineer
IoTG Platform Enabling & Development
Intel Corporation
(916) 356-2795
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/intel-gfx
next prev parent reply other threads:[~2015-03-18 22:01 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-03-18 19:15 [RFC] drm/i915: don't wait_for_vblank if the CRTC is disabled Paulo Zanoni
2015-03-18 22:01 ` Matt Roper [this message]
2015-03-18 22:04 ` [PATCH] drm/i915: Move vblank wait determination to 'check' phase Matt Roper
2015-03-19 11:43 ` shuang.he
2015-03-19 19:16 ` Paulo Zanoni
2015-03-19 19:36 ` Ville Syrjälä
2015-03-20 10:22 ` Daniel Vetter
2015-03-19 16:31 ` [RFC] drm/i915: don't wait_for_vblank if the CRTC is disabled Daniel Vetter
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=20150318220122.GG31220@intel.com \
--to=matthew.d.roper@intel.com \
--cc=intel-gfx@lists.freedesktop.org \
--cc=paulo.r.zanoni@intel.com \
--cc=przanoni@gmail.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox