From: Jani Nikula <jani.nikula@linux.intel.com>
To: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>,
intel-gfx@lists.freedesktop.org
Cc: "João Paulo Rechi Vita" <jprvita@endlessm.com>, stable@vger.kernel.org
Subject: Re: [PATCH] drm/i915: Only disable visible planes in intel_crtc_disable_planes
Date: Wed, 23 Sep 2015 11:37:00 +0300 [thread overview]
Message-ID: <87k2rhpm4z.fsf@intel.com> (raw)
In-Reply-To: <1442840710-11768-1-git-send-email-maarten.lankhorst@linux.intel.com>
On Mon, 21 Sep 2015, Maarten Lankhorst <maarten.lankhorst@linux.intel.com> wrote:
> This is fix for a regression introduced by 27321ae88c70104df
> "drm/i915: Use the disable callback for disabling planes."
>
> Disabling invisible planes may cause recalculation of
> watermarks, which is a problem because the software state
> is not yet in sync with the hardware state.
> This may result in a black screen during kernel boot and
> plymouth splash until any input action is performed in X.
>
> Explicitly checking for plane visibility fixes the regression.
> This is a patch for v4.2 only, v4.3 needs a different fix because
> it was fixed by d032ffa04cf7c6f
> "drm/i915: Handle disabling planes better, v2."
>
> but later broken again in
> 4cf0ebbd4fafbdf "drm/i915: Rework plane readout."
>
> This will be fixed in v4.3 by:
> "drm/i915: Add .get_hw_state() method for planes"
Stable will need that described as
commit <commit-id> upstream.
as the first line of the commit message.
BR,
Jani.
>
> Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=91952
> Cc: João Paulo Rechi Vita <jprvita@endlessm.com>
> Cc: stable@vger.kernel.org # v4.2 only
> ---
> drivers/gpu/drm/i915/intel_display.c | 3 ++-
> 1 file changed, 2 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c
> index 87476ff181dd..a5f97cfd86d8 100644
> --- a/drivers/gpu/drm/i915/intel_display.c
> +++ b/drivers/gpu/drm/i915/intel_display.c
> @@ -4863,7 +4863,8 @@ static void intel_crtc_disable_planes(struct drm_crtc *crtc)
>
> intel_crtc_dpms_overlay_disable(intel_crtc);
> for_each_intel_plane(dev, intel_plane) {
> - if (intel_plane->pipe == pipe) {
> + if (intel_plane->pipe == pipe &&
> + to_intel_plane_state(intel_plane->base.state)->visible) {
> struct drm_crtc *from = intel_plane->base.crtc;
>
> intel_plane->disable_plane(&intel_plane->base,
> --
> 2.1.0
>
> _______________________________________________
> Intel-gfx mailing list
> Intel-gfx@lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/intel-gfx
--
Jani Nikula, Intel Open Source Technology Center
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/intel-gfx
WARNING: multiple messages have this Message-ID (diff)
From: Jani Nikula <jani.nikula@linux.intel.com>
To: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>,
intel-gfx@lists.freedesktop.org
Cc: stable@vger.kernel.org, "João Paulo Rechi Vita" <jprvita@endlessm.com>
Subject: Re: [Intel-gfx] [PATCH] drm/i915: Only disable visible planes in intel_crtc_disable_planes
Date: Wed, 23 Sep 2015 11:37:00 +0300 [thread overview]
Message-ID: <87k2rhpm4z.fsf@intel.com> (raw)
In-Reply-To: <1442840710-11768-1-git-send-email-maarten.lankhorst@linux.intel.com>
On Mon, 21 Sep 2015, Maarten Lankhorst <maarten.lankhorst@linux.intel.com> wrote:
> This is fix for a regression introduced by 27321ae88c70104df
> "drm/i915: Use the disable callback for disabling planes."
>
> Disabling invisible planes may cause recalculation of
> watermarks, which is a problem because the software state
> is not yet in sync with the hardware state.
> This may result in a black screen during kernel boot and
> plymouth splash until any input action is performed in X.
>
> Explicitly checking for plane visibility fixes the regression.
> This is a patch for v4.2 only, v4.3 needs a different fix because
> it was fixed by d032ffa04cf7c6f
> "drm/i915: Handle disabling planes better, v2."
>
> but later broken again in
> 4cf0ebbd4fafbdf "drm/i915: Rework plane readout."
>
> This will be fixed in v4.3 by:
> "drm/i915: Add .get_hw_state() method for planes"
Stable will need that described as
commit <commit-id> upstream.
as the first line of the commit message.
BR,
Jani.
>
> Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=91952
> Cc: João Paulo Rechi Vita <jprvita@endlessm.com>
> Cc: stable@vger.kernel.org # v4.2 only
> ---
> drivers/gpu/drm/i915/intel_display.c | 3 ++-
> 1 file changed, 2 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c
> index 87476ff181dd..a5f97cfd86d8 100644
> --- a/drivers/gpu/drm/i915/intel_display.c
> +++ b/drivers/gpu/drm/i915/intel_display.c
> @@ -4863,7 +4863,8 @@ static void intel_crtc_disable_planes(struct drm_crtc *crtc)
>
> intel_crtc_dpms_overlay_disable(intel_crtc);
> for_each_intel_plane(dev, intel_plane) {
> - if (intel_plane->pipe == pipe) {
> + if (intel_plane->pipe == pipe &&
> + to_intel_plane_state(intel_plane->base.state)->visible) {
> struct drm_crtc *from = intel_plane->base.crtc;
>
> intel_plane->disable_plane(&intel_plane->base,
> --
> 2.1.0
>
> _______________________________________________
> Intel-gfx mailing list
> Intel-gfx@lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/intel-gfx
--
Jani Nikula, Intel Open Source Technology Center
next prev parent reply other threads:[~2015-09-23 8:33 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-09-21 13:05 [PATCH] drm/i915: Only disable visible planes in intel_crtc_disable_planes Maarten Lankhorst
2015-09-23 8:37 ` Jani Nikula [this message]
2015-09-23 8:37 ` [Intel-gfx] " Jani Nikula
2015-09-24 19:20 ` João Paulo Rechi Vita
2015-09-24 19:20 ` [Intel-gfx] " João Paulo Rechi Vita
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=87k2rhpm4z.fsf@intel.com \
--to=jani.nikula@linux.intel.com \
--cc=intel-gfx@lists.freedesktop.org \
--cc=jprvita@endlessm.com \
--cc=maarten.lankhorst@linux.intel.com \
--cc=stable@vger.kernel.org \
/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.