On Fri, Nov 13, 2015 at 05:53:33PM -0200, Paulo Zanoni wrote: > In function find_compression_threshold() we try to over-allocate CFB > space in order to reduce reallocations and fragmentation, and we're > not considering that at the CFB size check. Consider it. > > There is also a longer-term plan to kill > dev_priv->fbc.uncompressed_size, but this will come later. > > Signed-off-by: Paulo Zanoni <paulo.r.zanoni@xxxxxxxxx> > --- > drivers/gpu/drm/i915/intel_fbc.c | 3 ++- > 1 file changed, 2 insertions(+), 1 deletion(-) > > diff --git a/drivers/gpu/drm/i915/intel_fbc.c b/drivers/gpu/drm/i915/intel_fbc.c > index 11fc528..611672f 100644 > --- a/drivers/gpu/drm/i915/intel_fbc.c > +++ b/drivers/gpu/drm/i915/intel_fbc.c > @@ -720,7 +720,8 @@ static int intel_fbc_setup_cfb(struct intel_crtc *crtc) > size = intel_fbc_calculate_cfb_size(crtc); > cpp = drm_format_plane_cpp(fb->pixel_format, 0); > > - if (size <= dev_priv->fbc.uncompressed_size) > + if (dev_priv->fbc.compressed_fb.allocated && > + size <= dev_priv->fbc.compressed_fb.size * dev_priv->fbc.threshold) > return 0; Hmm, not sure if it would be worth just clearing compressed_fb.size after remove. But at any rate, you want to use drm_mm_node_allocated(&fbc.compressed_fb). With that minor change, Reviewed-by: Chris Wilson <chris@xxxxxxxxxxxxxxxxxx> -Chris -- Chris Wilson, Intel Open Source Technology Centre _______________________________________________ Intel-gfx mailing list Intel-gfx@xxxxxxxxxxxxxxxxxxxxx http://lists.freedesktop.org/mailman/listinfo/intel-gfx