On 17-01-05 12:16:45, Chad Versace wrote:
This patch has a regressing side-effect: it disables CCS for all single-sample
miptrees created by glRenderbufferStorage(). After stepping through some Piglit
tests, I believe the problem is that line 161 below always returns false for
such miptrees because mt->is_scanout is true. I don't understand why
mt->is_scanout would be set for those miptrees.

The CCS gets disabled even if app never uses EGLImage nor modifiers.


The bandwidth savings are definitely there - so it can't be disabling it in all
cases. I'll look a bit further. Something still isn't entirely clear to me.

   149 bool
   150 intel_miptree_supports_non_msrt_fast_clear(struct brw_context *brw,
   151                                            const struct 
intel_mipmap_tree *mt)
   152 {
   153    /* MCS support does not exist prior to Gen7 */
   154    if (brw->gen < 7)
   155       return false;
   156
   157    if (mt->aux_disable & INTEL_AUX_DISABLE_MCS)
   158       return false;
   159
   160    if (mt->is_scanout && mt->msaa_layout != INTEL_MSAA_LAYOUT_CMS)
 **161       return false;

That explains why 'egl_khr_gl_renderbuffer_image-clear-shared-image GL_RGBA'
passes on this patch series.

_______________________________________________
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-dev

Reply via email to