We were failing to relocate, so on the first draw run our scratch
would tend to get written to 0x0.
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
*/
vs->vs6.vs_enable = 1;
+ /* Emit scratch space relocation */
+ if (brw->vs.prog_data->total_scratch != 0) {
+ drm_intel_bo_emit_reloc(intel->batch.bo,
+ brw->vs.state_offset +
+ offsetof(struct brw_vs_unit_state, thread2),
+ brw->vs.scratch_bo,
+ vs->thread2.per_thread_scratch_space,
+ I915_GEM_DOMAIN_RENDER, I915_GEM_DOMAIN_RENDER);
+ }
+
brw->state.dirty.cache |= CACHE_NEW_VS_UNIT;
}