[Intel-gfx] [PATCH] drm/i915: Disable FBC on Haswell
It causes black screen on bootup and is approximately 100x slower than running with FBC disabled, so the GPU runs at a high frequency for much longer - completely contrary to the power saving claims. It also still has mutex deadlocks in multi-head scenarios, which can lead to a system/X lockup. These bugs were known before FBC was enabled by default on Haswell and still have not been fixed. Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=79716 Reported-and-tested-by: Jon Kristensen Signed-off-by: Chris Wilson Cc: sta...@vger.kernel.org --- drivers/gpu/drm/i915/intel_pm.c | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/drivers/gpu/drm/i915/intel_pm.c b/drivers/gpu/drm/i915/intel_pm.c index e403010540a5..0b8a6010427e 100644 --- a/drivers/gpu/drm/i915/intel_pm.c +++ b/drivers/gpu/drm/i915/intel_pm.c @@ -511,8 +511,7 @@ void intel_update_fbc(struct drm_device *dev) obj = intel_fb->obj; adjusted_mode = &intel_crtc->config.adjusted_mode; - if (i915.enable_fbc < 0 && - INTEL_INFO(dev)->gen <= 7 && !IS_HASWELL(dev)) { + if (i915.enable_fbc < 0) { if (set_no_fbc_reason(dev_priv, FBC_CHIP_DEFAULT)) DRM_DEBUG_KMS("disabled per chip default\n"); goto out_disable; -- 2.0.0 ___ Intel-gfx mailing list Intel-gfx@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/intel-gfx
Re: [Intel-gfx] [PATCH] drm/i915: Disable FBC on Haswell
On Fri, Jun 06, 2014 at 10:37:11AM +0100, Chris Wilson wrote: > It causes black screen on bootup and is approximately 100x slower than > running with FBC disabled, so the GPU runs at a high frequency for much > longer - completely contrary to the power saving claims. It also still > has mutex deadlocks in multi-head scenarios, which can lead to a > system/X lockup. These bugs were known before FBC was enabled by default > on Haswell and still have not been fixed. > > Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=79716 > Reported-and-tested-by: Jon Kristensen > Signed-off-by: Chris Wilson > Cc: sta...@vger.kernel.org Reviewed-by: Daniel Vetter Jani, please pick up for -fixes. -Daniel > --- > drivers/gpu/drm/i915/intel_pm.c | 3 +-- > 1 file changed, 1 insertion(+), 2 deletions(-) > > diff --git a/drivers/gpu/drm/i915/intel_pm.c b/drivers/gpu/drm/i915/intel_pm.c > index e403010540a5..0b8a6010427e 100644 > --- a/drivers/gpu/drm/i915/intel_pm.c > +++ b/drivers/gpu/drm/i915/intel_pm.c > @@ -511,8 +511,7 @@ void intel_update_fbc(struct drm_device *dev) > obj = intel_fb->obj; > adjusted_mode = &intel_crtc->config.adjusted_mode; > > - if (i915.enable_fbc < 0 && > - INTEL_INFO(dev)->gen <= 7 && !IS_HASWELL(dev)) { > + if (i915.enable_fbc < 0) { > if (set_no_fbc_reason(dev_priv, FBC_CHIP_DEFAULT)) > DRM_DEBUG_KMS("disabled per chip default\n"); > goto out_disable; > -- > 2.0.0 > > ___ > Intel-gfx mailing list > Intel-gfx@lists.freedesktop.org > http://lists.freedesktop.org/mailman/listinfo/intel-gfx -- Daniel Vetter Software Engineer, Intel Corporation +41 (0) 79 365 57 48 - http://blog.ffwll.ch ___ Intel-gfx mailing list Intel-gfx@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/intel-gfx
Re: [Intel-gfx] [PATCH] drm/i915: Disable FBC on Haswell
On Fri, 06 Jun 2014, Chris Wilson wrote: > It causes black screen on bootup and is approximately 100x slower than > running with FBC disabled, so the GPU runs at a high frequency for much > longer - completely contrary to the power saving claims. It also still > has mutex deadlocks in multi-head scenarios, which can lead to a > system/X lockup. These bugs were known before FBC was enabled by default > on Haswell and still have not been fixed. > > Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=79716 > Reported-and-tested-by: Jon Kristensen > Signed-off-by: Chris Wilson > Cc: sta...@vger.kernel.org > --- > drivers/gpu/drm/i915/intel_pm.c | 3 +-- > 1 file changed, 1 insertion(+), 2 deletions(-) > > diff --git a/drivers/gpu/drm/i915/intel_pm.c b/drivers/gpu/drm/i915/intel_pm.c > index e403010540a5..0b8a6010427e 100644 > --- a/drivers/gpu/drm/i915/intel_pm.c > +++ b/drivers/gpu/drm/i915/intel_pm.c > @@ -511,8 +511,7 @@ void intel_update_fbc(struct drm_device *dev) > obj = intel_fb->obj; > adjusted_mode = &intel_crtc->config.adjusted_mode; > > - if (i915.enable_fbc < 0 && > - INTEL_INFO(dev)->gen <= 7 && !IS_HASWELL(dev)) { > + if (i915.enable_fbc < 0) { Not only does this disable FBC by default on Haswell but also on all current and future platforms, including Broadwell. Shouldn't you leave the INTEL_INFO(dev)->gen <= 7 part intact? BR, Jani. > if (set_no_fbc_reason(dev_priv, FBC_CHIP_DEFAULT)) > DRM_DEBUG_KMS("disabled per chip default\n"); > goto out_disable; > -- > 2.0.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
Re: [Intel-gfx] [PATCH] drm/i915: Disable FBC on Haswell
On Mon, Jun 09, 2014 at 09:12:18PM +0300, Jani Nikula wrote: > On Fri, 06 Jun 2014, Chris Wilson wrote: > > It causes black screen on bootup and is approximately 100x slower than > > running with FBC disabled, so the GPU runs at a high frequency for much > > longer - completely contrary to the power saving claims. It also still > > has mutex deadlocks in multi-head scenarios, which can lead to a > > system/X lockup. These bugs were known before FBC was enabled by default > > on Haswell and still have not been fixed. > > > > Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=79716 > > Reported-and-tested-by: Jon Kristensen > > Signed-off-by: Chris Wilson > > Cc: sta...@vger.kernel.org > > --- > > drivers/gpu/drm/i915/intel_pm.c | 3 +-- > > 1 file changed, 1 insertion(+), 2 deletions(-) > > > > diff --git a/drivers/gpu/drm/i915/intel_pm.c > > b/drivers/gpu/drm/i915/intel_pm.c > > index e403010540a5..0b8a6010427e 100644 > > --- a/drivers/gpu/drm/i915/intel_pm.c > > +++ b/drivers/gpu/drm/i915/intel_pm.c > > @@ -511,8 +511,7 @@ void intel_update_fbc(struct drm_device *dev) > > obj = intel_fb->obj; > > adjusted_mode = &intel_crtc->config.adjusted_mode; > > > > - if (i915.enable_fbc < 0 && > > - INTEL_INFO(dev)->gen <= 7 && !IS_HASWELL(dev)) { > > + if (i915.enable_fbc < 0) { > > Not only does this disable FBC by default on Haswell but also on all > current and future platforms, including Broadwell. Shouldn't you leave > the INTEL_INFO(dev)->gen <= 7 part intact? The current FBC code is universally broken. -- Ville Syrjälä Intel OTC ___ Intel-gfx mailing list Intel-gfx@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/intel-gfx
Re: [Intel-gfx] [PATCH] drm/i915: Disable FBC on Haswell
On Mon, 09 Jun 2014, Ville Syrjälä wrote: > On Mon, Jun 09, 2014 at 09:12:18PM +0300, Jani Nikula wrote: >> On Fri, 06 Jun 2014, Chris Wilson wrote: >> > It causes black screen on bootup and is approximately 100x slower than >> > running with FBC disabled, so the GPU runs at a high frequency for much >> > longer - completely contrary to the power saving claims. It also still >> > has mutex deadlocks in multi-head scenarios, which can lead to a >> > system/X lockup. These bugs were known before FBC was enabled by default >> > on Haswell and still have not been fixed. >> > >> > Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=79716 >> > Reported-and-tested-by: Jon Kristensen >> > Signed-off-by: Chris Wilson >> > Cc: sta...@vger.kernel.org >> > --- >> > drivers/gpu/drm/i915/intel_pm.c | 3 +-- >> > 1 file changed, 1 insertion(+), 2 deletions(-) >> > >> > diff --git a/drivers/gpu/drm/i915/intel_pm.c >> > b/drivers/gpu/drm/i915/intel_pm.c >> > index e403010540a5..0b8a6010427e 100644 >> > --- a/drivers/gpu/drm/i915/intel_pm.c >> > +++ b/drivers/gpu/drm/i915/intel_pm.c >> > @@ -511,8 +511,7 @@ void intel_update_fbc(struct drm_device *dev) >> >obj = intel_fb->obj; >> >adjusted_mode = &intel_crtc->config.adjusted_mode; >> > >> > - if (i915.enable_fbc < 0 && >> > - INTEL_INFO(dev)->gen <= 7 && !IS_HASWELL(dev)) { >> > + if (i915.enable_fbc < 0) { >> >> Not only does this disable FBC by default on Haswell but also on all >> current and future platforms, including Broadwell. Shouldn't you leave >> the INTEL_INFO(dev)->gen <= 7 part intact? > > The current FBC code is universally broken. Well, then the commit message should reflect that! :p BR, Jani. > > -- > Ville Syrjälä > Intel OTC -- Jani Nikula, Intel Open Source Technology Center ___ Intel-gfx mailing list Intel-gfx@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/intel-gfx
Re: [Intel-gfx] [PATCH] drm/i915: Disable FBC on Haswell
On Mon, Jun 09, 2014 at 10:06:29PM +0300, Jani Nikula wrote: > On Mon, 09 Jun 2014, Ville Syrjälä wrote: > > On Mon, Jun 09, 2014 at 09:12:18PM +0300, Jani Nikula wrote: > >> On Fri, 06 Jun 2014, Chris Wilson wrote: > >> > It causes black screen on bootup and is approximately 100x slower than > >> > running with FBC disabled, so the GPU runs at a high frequency for much > >> > longer - completely contrary to the power saving claims. It also still > >> > has mutex deadlocks in multi-head scenarios, which can lead to a > >> > system/X lockup. These bugs were known before FBC was enabled by default > >> > on Haswell and still have not been fixed. > >> > > >> > Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=79716 > >> > Reported-and-tested-by: Jon Kristensen > >> > Signed-off-by: Chris Wilson > >> > Cc: sta...@vger.kernel.org > >> > --- > >> > drivers/gpu/drm/i915/intel_pm.c | 3 +-- > >> > 1 file changed, 1 insertion(+), 2 deletions(-) > >> > > >> > diff --git a/drivers/gpu/drm/i915/intel_pm.c > >> > b/drivers/gpu/drm/i915/intel_pm.c > >> > index e403010540a5..0b8a6010427e 100644 > >> > --- a/drivers/gpu/drm/i915/intel_pm.c > >> > +++ b/drivers/gpu/drm/i915/intel_pm.c > >> > @@ -511,8 +511,7 @@ void intel_update_fbc(struct drm_device *dev) > >> > obj = intel_fb->obj; > >> > adjusted_mode = &intel_crtc->config.adjusted_mode; > >> > > >> > -if (i915.enable_fbc < 0 && > >> > -INTEL_INFO(dev)->gen <= 7 && !IS_HASWELL(dev)) { > >> > +if (i915.enable_fbc < 0) { > >> > >> Not only does this disable FBC by default on Haswell but also on all > >> current and future platforms, including Broadwell. Shouldn't you leave > >> the INTEL_INFO(dev)->gen <= 7 part intact? > > > > The current FBC code is universally broken. > > Well, then the commit message should reflect that! :p s/Haswell/Haswell+/ and it's correct ;-) -Daniel -- Daniel Vetter Software Engineer, Intel Corporation +41 (0) 79 365 57 48 - http://blog.ffwll.ch ___ Intel-gfx mailing list Intel-gfx@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/intel-gfx
Re: [Intel-gfx] [PATCH] drm/i915: Disable FBC on Haswell
On Tue, 10 Jun 2014, Daniel Vetter wrote: > On Mon, Jun 09, 2014 at 10:06:29PM +0300, Jani Nikula wrote: >> On Mon, 09 Jun 2014, Ville Syrjälä wrote: >> > On Mon, Jun 09, 2014 at 09:12:18PM +0300, Jani Nikula wrote: >> >> On Fri, 06 Jun 2014, Chris Wilson wrote: >> >> > It causes black screen on bootup and is approximately 100x slower than >> >> > running with FBC disabled, so the GPU runs at a high frequency for much >> >> > longer - completely contrary to the power saving claims. It also still >> >> > has mutex deadlocks in multi-head scenarios, which can lead to a >> >> > system/X lockup. These bugs were known before FBC was enabled by default >> >> > on Haswell and still have not been fixed. >> >> > >> >> > Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=79716 >> >> > Reported-and-tested-by: Jon Kristensen >> >> > Signed-off-by: Chris Wilson >> >> > Cc: sta...@vger.kernel.org >> >> > --- >> >> > drivers/gpu/drm/i915/intel_pm.c | 3 +-- >> >> > 1 file changed, 1 insertion(+), 2 deletions(-) >> >> > >> >> > diff --git a/drivers/gpu/drm/i915/intel_pm.c >> >> > b/drivers/gpu/drm/i915/intel_pm.c >> >> > index e403010540a5..0b8a6010427e 100644 >> >> > --- a/drivers/gpu/drm/i915/intel_pm.c >> >> > +++ b/drivers/gpu/drm/i915/intel_pm.c >> >> > @@ -511,8 +511,7 @@ void intel_update_fbc(struct drm_device *dev) >> >> > obj = intel_fb->obj; >> >> > adjusted_mode = &intel_crtc->config.adjusted_mode; >> >> > >> >> > - if (i915.enable_fbc < 0 && >> >> > - INTEL_INFO(dev)->gen <= 7 && !IS_HASWELL(dev)) { >> >> > + if (i915.enable_fbc < 0) { >> >> >> >> Not only does this disable FBC by default on Haswell but also on all >> >> current and future platforms, including Broadwell. Shouldn't you leave >> >> the INTEL_INFO(dev)->gen <= 7 part intact? >> > >> > The current FBC code is universally broken. >> >> Well, then the commit message should reflect that! :p > > s/Haswell/Haswell+/ and it's correct ;-) Pushed to -fixes with a little more verbose change. Thanks for the patch and review. BR, Jani. > -Daniel > -- > Daniel Vetter > Software Engineer, Intel Corporation > +41 (0) 79 365 57 48 - http://blog.ffwll.ch -- Jani Nikula, Intel Open Source Technology Center ___ Intel-gfx mailing list Intel-gfx@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/intel-gfx