mirror of https://gitee.com/openkylin/linux.git
drm/i915: Stop marking the unaccessible scratch page as UC
Since by design, if not entirely by practice, nothing is allowed to access the scratch page we use to background fill the VM, then we do not need to ensure that it is coherent between the CPU and GPU. set_pages_uc() does a stop_machine() after changing the PAT, and that significantly impacts upon context creation throughput. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk> Link: http://patchwork.freedesktop.org/patch/msgid/20160822074431.26872-1-chris@chris-wilson.co.uk Reviewed-by: Joonas Lahtinen <joonas.lahtinen@linux.intel.com>
This commit is contained in:
parent
5f4b091aa2
commit
14daa63b27
|
@ -422,16 +422,12 @@ static struct i915_page_scratch *alloc_scratch_page(struct drm_device *dev)
|
||||||
return ERR_PTR(ret);
|
return ERR_PTR(ret);
|
||||||
}
|
}
|
||||||
|
|
||||||
set_pages_uc(px_page(sp), 1);
|
|
||||||
|
|
||||||
return sp;
|
return sp;
|
||||||
}
|
}
|
||||||
|
|
||||||
static void free_scratch_page(struct drm_device *dev,
|
static void free_scratch_page(struct drm_device *dev,
|
||||||
struct i915_page_scratch *sp)
|
struct i915_page_scratch *sp)
|
||||||
{
|
{
|
||||||
set_pages_wb(px_page(sp), 1);
|
|
||||||
|
|
||||||
cleanup_px(dev, sp);
|
cleanup_px(dev, sp);
|
||||||
kfree(sp);
|
kfree(sp);
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue