On Fri, Aug 26, 2016 at 07:47:19PM +0100, Chris Wilson wrote: > On Fri, Aug 26, 2016 at 07:25:57PM +0100, Dave Gordon wrote: > > 'relative_constants_mode' has always been tracked per-device, but this > > has actually been wrong ever since hardware contexts were introduced, as > > the INSTPM register is saved (and automatically restored) as part of the > > render ring context. The software per-device value could therefore get > > out of sync with the hardware per-context value. > > > > Rather than track this correctly (per-context in LRC modes, per-device > > in legacy ringbuffer mode), a simpler solution is just to give up trying > > to track it at all, and always prefix each render batch with the single > > instruction needed to explicitly set it to the required mode for the > > current batch. > > Agreed. However always emitting it wasteful for those who never touch > it, i.e. everybody. Rather than track the last value, just track if it > ever changed from default then reassign it before every batch? And since nothing released has ever used it: diff --git a/drivers/gpu/drm/i915/i915_drv.c b/drivers/gpu/drm/i915/i915_drv.c index a93efd471e94..1581f37d531b 100644 --- a/drivers/gpu/drm/i915/i915_drv.c +++ b/drivers/gpu/drm/i915/i915_drv.c @@ -283,7 +283,8 @@ static int i915_getparam(struct drm_device *dev, void *data, value = 1; break; case I915_PARAM_HAS_EXEC_CONSTANTS: + WARN_ONCE(1, "Planned obsolence: please report to bugs.freedesktop.org\n"); value = INTEL_INFO(dev)->gen >= 4; break; case I915_PARAM_HAS_RELAXED_DELTA: value = 1; and deleting the code later would be an option. -Chris -- Chris Wilson, Intel Open Source Technology Centre _______________________________________________ Intel-gfx mailing list Intel-gfx@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/intel-gfx