public inbox for intel-gfx@lists.freedesktop.org
 help / color / mirror / Atom feed
* [PATCH] drm/i915/bdw: Populate lrc with aliasing ppgtt if required
@ 2014-08-18 14:54 Thomas Daniel
  2014-08-18 16:49 ` Damien Lespiau
  0 siblings, 1 reply; 6+ messages in thread
From: Thomas Daniel @ 2014-08-18 14:54 UTC (permalink / raw)
  To: intel-gfx

A previous commit broke aliasing PPGTT for lrc, resulting in a kernel oops
on boot. Add a check so that is full PPGTT is not in use the context is
populated with the aliasing PPGTT.

Issue: VIZ-4278
Signed-off-by: Thomas Daniel <thomas.daniel@intel.com>
---
 drivers/gpu/drm/i915/intel_lrc.c |    7 +++++++
 1 file changed, 7 insertions(+)

diff --git a/drivers/gpu/drm/i915/intel_lrc.c b/drivers/gpu/drm/i915/intel_lrc.c
index c096b9b..79a6b91 100644
--- a/drivers/gpu/drm/i915/intel_lrc.c
+++ b/drivers/gpu/drm/i915/intel_lrc.c
@@ -1452,12 +1452,19 @@ static int
 populate_lr_context(struct intel_context *ctx, struct drm_i915_gem_object *ctx_obj,
 		    struct intel_engine_cs *ring, struct intel_ringbuffer *ringbuf)
 {
+	struct drm_device *dev = ring->dev;
+	struct drm_i915_private *dev_priv = dev->dev_private;
 	struct drm_i915_gem_object *ring_obj = ringbuf->obj;
 	struct i915_hw_ppgtt *ppgtt = ctx->ppgtt;
 	struct page *page;
 	uint32_t *reg_state;
 	int ret;
 
+	if (USES_FULL_PPGTT(dev))
+		ppgtt = ctx->ppgtt;
+	else
+		ppgtt = dev_priv->mm.aliasing_ppgtt;
+
 	ret = i915_gem_object_set_to_cpu_domain(ctx_obj, true);
 	if (ret) {
 		DRM_DEBUG_DRIVER("Could not set to CPU domain\n");
-- 
1.7.9.5

^ permalink raw reply related	[flat|nested] 6+ messages in thread
[parent not found: <20140818164929@strange.ger.corp.intel.com>]

end of thread, other threads:[~2014-08-26  8:09 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-08-18 14:54 [PATCH] drm/i915/bdw: Populate lrc with aliasing ppgtt if required Thomas Daniel
2014-08-18 16:49 ` Damien Lespiau
2014-08-19 14:33   ` Daniel Vetter
     [not found] <20140818164929@strange.ger.corp.intel.com>
2014-08-19  9:13 ` Thomas Daniel
2014-08-19  9:44   ` Damien Lespiau
2014-08-26  8:09     ` Daniel Vetter

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox