diff mbox

i915/fbc: Disable on HSW by default for now

Message ID 1465487895-7401-1-git-send-email-cpaul@redhat.com (mailing list archive)
State New, archived
Headers show

Commit Message

cpaul@redhat.com June 9, 2016, 3:58 p.m. UTC
From https://bugs.freedesktop.org/show_bug.cgi?id=96461 :

This was kind of a difficult bug to track down. If you're using a
Haswell system running GNOME and you have fbc completely enabled and
working, playing videos can result in video artifacts. Steps to
reproduce:

- Run GNOME
- Ensure FBC is enabled and active
- Download a movie, I used the ogg version of Big Buck Bunny for this
- Run `gst-launch-1.0 filesrc location='some_movie.ogg' ! decodebin !
  glimagesink` in a terminal
- Watch for about over a minute, you'll see small horizontal lines go
  down the screen.

For the time being, disable FBC for Haswell by default.

Signed-off-by: Lyude <cpaul@redhat.com>
Cc: stable@vger.kernel.org
---
 drivers/gpu/drm/i915/intel_fbc.c | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

Comments

Zanoni, Paulo R June 9, 2016, 7:04 p.m. UTC | #1
Em Qui, 2016-06-09 às 11:58 -0400, Lyude escreveu:
> From https://bugs.freedesktop.org/show_bug.cgi?id=96461 :

> 

> This was kind of a difficult bug to track down. If you're using a

> Haswell system running GNOME and you have fbc completely enabled and

> working, playing videos can result in video artifacts. Steps to

> reproduce:

> 

> - Run GNOME

> - Ensure FBC is enabled and active

> - Download a movie, I used the ogg version of Big Buck Bunny for this

> - Run `gst-launch-1.0 filesrc location='some_movie.ogg' ! decodebin !

>   glimagesink` in a terminal

> - Watch for about over a minute, you'll see small horizontal lines go

>   down the screen.


If you "dmesg | grep -i underrun", do you see anything (even if it
doesn't happen during the moments of corruption)?

Does the problem still happen if you apply these patches?
 - https://patchwork.freedesktop.org/patch/79567/
 - https://patchwork.freedesktop.org/patch/80857/
 - https://patchwork.freedesktop.org/patch/92634/

> 

> For the time being, disable FBC for Haswell by default.


In case we want to improve the commit message:

We also got reports from Steven Honeyman on openbox+roxterm, and from
Stefan Richter.

Anyway, there's a regression that needs to be fixed, so:

Reviewed-by: Paulo Zanoni <paulo.r.zanoni@intel.com>


We can always try again later.

> 

> Signed-off-by: Lyude <cpaul@redhat.com>

> Cc: stable@vger.kernel.org

> ---

>  drivers/gpu/drm/i915/intel_fbc.c | 3 +--

>  1 file changed, 1 insertion(+), 2 deletions(-)

> 

> diff --git a/drivers/gpu/drm/i915/intel_fbc.c

> b/drivers/gpu/drm/i915/intel_fbc.c

> index 0f0492f..28f4407 100644

> --- a/drivers/gpu/drm/i915/intel_fbc.c

> +++ b/drivers/gpu/drm/i915/intel_fbc.c

> @@ -823,8 +823,7 @@ static bool intel_fbc_can_choose(struct

> intel_crtc *crtc)

>  {

>  	struct drm_i915_private *dev_priv = crtc->base.dev-

> >dev_private;

>  	struct intel_fbc *fbc = &dev_priv->fbc;

> -	bool enable_by_default = IS_HASWELL(dev_priv) ||

> -				 IS_BROADWELL(dev_priv);

> +	bool enable_by_default = IS_BROADWELL(dev_priv);

>  

>  	if (intel_vgpu_active(dev_priv->dev)) {

>  		fbc->no_fbc_reason = "VGPU is active";
Stefan Richter June 10, 2016, 6:44 a.m. UTC | #2
On Jun 09 Zanoni, Paulo R wrote:
> Em Qui, 2016-06-09 às 11:58 -0400, Lyude escreveu:
> > From https://bugs.freedesktop.org/show_bug.cgi?id=96461 :
> > 
> > This was kind of a difficult bug to track down. If you're using a
> > Haswell system running GNOME and you have fbc completely enabled and
> > working, playing videos can result in video artifacts.
[...]
> > For the time being, disable FBC for Haswell by default.  
> 
> In case we want to improve the commit message:
> 
> We also got reports from Steven Honeyman on openbox+roxterm, and from
> Stefan Richter.

Perhaps also worth mentioning in the changelog:
Stefan Richter reported kernel freezes (no video artifacts) when fbc is on.
(E3-1245 v3 with HD P4600; openbox and some KDE and LXDE applications,
thread begins at https://lkml.org/lkml/2016/4/26/813)
Zanoni, Paulo R June 20, 2016, 9:11 p.m. UTC | #3
Em Sex, 2016-06-10 às 08:44 +0200, Stefan Richter escreveu:
> On Jun 09 Zanoni, Paulo R wrote:

> > 

> > Em Qui, 2016-06-09 às 11:58 -0400, Lyude escreveu:

> > > 

> > > From https://bugs.freedesktop.org/show_bug.cgi?id=96461 :

> > > 

> > > This was kind of a difficult bug to track down. If you're using a

> > > Haswell system running GNOME and you have fbc completely enabled

> > > and

> > > working, playing videos can result in video artifacts.

> [...]

> > 

> > > 

> > > For the time being, disable FBC for Haswell by default.  

> > In case we want to improve the commit message:

> > 

> > We also got reports from Steven Honeyman on openbox+roxterm, and

> > from

> > Stefan Richter.

> Perhaps also worth mentioning in the changelog:

> Stefan Richter reported kernel freezes (no video artifacts) when fbc

> is on.

> (E3-1245 v3 with HD P4600; openbox and some KDE and LXDE

> applications,

> thread begins at https://lkml.org/lkml/2016/4/26/813)


Patch merged with small additions to the commit message.

Thanks everybody involved,
Paulo
diff mbox

Patch

diff --git a/drivers/gpu/drm/i915/intel_fbc.c b/drivers/gpu/drm/i915/intel_fbc.c
index 0f0492f..28f4407 100644
--- a/drivers/gpu/drm/i915/intel_fbc.c
+++ b/drivers/gpu/drm/i915/intel_fbc.c
@@ -823,8 +823,7 @@  static bool intel_fbc_can_choose(struct intel_crtc *crtc)
 {
 	struct drm_i915_private *dev_priv = crtc->base.dev->dev_private;
 	struct intel_fbc *fbc = &dev_priv->fbc;
-	bool enable_by_default = IS_HASWELL(dev_priv) ||
-				 IS_BROADWELL(dev_priv);
+	bool enable_by_default = IS_BROADWELL(dev_priv);
 
 	if (intel_vgpu_active(dev_priv->dev)) {
 		fbc->no_fbc_reason = "VGPU is active";