On 01/06/16 17:05, Jason Ekstrand wrote: > > > On May 24, 2016 12:21 AM, "Francisco Jerez" <curroje...@riseup.net > <mailto:curroje...@riseup.net>> wrote: > > > > This was kind of an abuse of p->compressed, dataport send message > > instructions are always uncompressed. Use the current execution size > > instead since p->compressed is on its way out. > > --- > > src/mesa/drivers/dri/i965/brw_eu_emit.c | 14 ++++++++------ > > 1 file changed, 8 insertions(+), 6 deletions(-) > > > > diff --git a/src/mesa/drivers/dri/i965/brw_eu_emit.c > b/src/mesa/drivers/dri/i965/brw_eu_emit.c > > index a649206..10cbbe8 100644 > > --- a/src/mesa/drivers/dri/i965/brw_eu_emit.c > > +++ b/src/mesa/drivers/dri/i965/brw_eu_emit.c > > @@ -2886,9 +2886,11 @@ brw_surface_payload_size(struct brw_codegen *p, > > bool has_simd4x2, > > bool has_simd16) > > { > > - if (has_simd4x2 && brw_inst_access_mode(p->devinfo, p->current) > == BRW_ALIGN_16) > > + if (has_simd4x2 && > > + brw_inst_access_mode(p->devinfo, p->current) == BRW_ALIGN_16) > > return 1; > > - else if (has_simd16 && p->compressed) > > + else if (has_simd16 && > > + brw_inst_exec_size(p->devinfo, p->current) == > BRW_EXECUTE_16) > > return 2 * num_channels; > > else > > return num_channels; > > @@ -2907,7 +2909,7 @@ brw_set_dp_untyped_atomic_message(struct > brw_codegen *p, > > > > if (devinfo->gen >= 8 || devinfo->is_haswell) { > > if (brw_inst_access_mode(devinfo, p->current) == BRW_ALIGN_1) { > > - if (!p->compressed) > > + if (brw_inst_exec_size(devinfo, p->current) == BRW_EXECUTE_8) > > I would guess this change and the similar one below it. Perhaps we > want "!= BRW_EXECUTE_16" instead of "== BRW_EXECUTE_8"? >
Doing that change solves the gpu hang using "INTEL_DEBUG=shader_time" with the examples I was using. I will do a full piglit run, and if everything goes fine, I will send a patch to the list. BR
_______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev