|
@@ -429,7 +429,8 @@ void i915_gem_init_global_gtt(struct drm_device *dev,
|
|
|
{
|
|
|
drm_i915_private_t *dev_priv = dev->dev_private;
|
|
|
|
|
|
- drm_mm_init(&dev_priv->mm.gtt_space, start, end - start);
|
|
|
+ /* Substract the guard page ... */
|
|
|
+ drm_mm_init(&dev_priv->mm.gtt_space, start, end - start - PAGE_SIZE);
|
|
|
|
|
|
dev_priv->mm.gtt_start = start;
|
|
|
dev_priv->mm.gtt_mappable_end = mappable_end;
|
|
@@ -437,6 +438,6 @@ void i915_gem_init_global_gtt(struct drm_device *dev,
|
|
|
dev_priv->mm.gtt_total = end - start;
|
|
|
dev_priv->mm.mappable_gtt_total = min(end, mappable_end) - start;
|
|
|
|
|
|
- /* Take over this portion of the GTT */
|
|
|
+ /* ... but ensure that we clear the entire range. */
|
|
|
intel_gtt_clear_range(start / PAGE_SIZE, (end-start) / PAGE_SIZE);
|
|
|
}
|