i965/gen10: emit 3DSTATE_MULTISAMPLE more often.
authorRafael Antognolli <rafael.antognolli@intel.com>
Mon, 2 Oct 2017 18:06:05 +0000 (11:06 -0700)
committerRafael Antognolli <rafael.antognolli@intel.com>
Fri, 1 Dec 2017 19:27:19 +0000 (11:27 -0800)
On CNL, we see multiple multisample failures on piglit tests. By
emitting this extra state, though not documented in the bspec, those
failures seem to go away.

This workaround could be removed if we ever find out a better solution,
but it should be good enough for now.

Signed-off-by: Rafael Antognolli <rafael.antognolli@intel.com>
Cc: Kenneth Graunke <kenneth@whitecape.org>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
src/mesa/drivers/dri/i965/genX_state_upload.c

index 8e500d3..dcf497c 100644 (file)
@@ -3298,7 +3298,8 @@ genX(upload_multisample_state)(struct brw_context *brw)
 
 static const struct brw_tracked_state genX(multisample_state) = {
    .dirty = {
-      .mesa = _NEW_MULTISAMPLE,
+      .mesa = _NEW_MULTISAMPLE |
+              (GEN_GEN == 10 ? _NEW_BUFFERS : 0),
       .brw = BRW_NEW_BLORP |
              BRW_NEW_CONTEXT |
              BRW_NEW_NUM_SAMPLES,