From 8bdbc0c5b93ff97f08d302d7b634397d52620219 Mon Sep 17 00:00:00 2001 From: Kenneth Graunke Date: Fri, 21 Jul 2017 13:09:17 -0700 Subject: [PATCH] i965: Set MAP_PERSISTENT on program cache buffers. Chris Wilson pointed out that this mapping really is persistant. Shouldn't actually have any effect today, but best to set it anyway. Reviewed-by: Matt Turner --- src/mesa/drivers/dri/i965/brw_program_cache.c | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/src/mesa/drivers/dri/i965/brw_program_cache.c b/src/mesa/drivers/dri/i965/brw_program_cache.c index 8a3a9f67fa6..04682bef34c 100644 --- a/src/mesa/drivers/dri/i965/brw_program_cache.c +++ b/src/mesa/drivers/dri/i965/brw_program_cache.c @@ -219,8 +219,10 @@ brw_cache_new_bo(struct brw_cache *cache, uint32_t new_size) new_bo = brw_bo_alloc(brw->bufmgr, "program cache", new_size, 64); if (can_do_exec_capture(brw->screen)) new_bo->kflags = EXEC_OBJECT_CAPTURE; - if (brw->has_llc) - llc_map = brw_bo_map(brw, new_bo, MAP_READ | MAP_WRITE | MAP_ASYNC); + if (brw->has_llc) { + llc_map = brw_bo_map(brw, new_bo, MAP_READ | MAP_WRITE | + MAP_ASYNC | MAP_PERSISTENT); + } /* Copy any existing data that needs to be saved. */ if (cache->next_offset != 0) { @@ -416,8 +418,10 @@ brw_init_caches(struct brw_context *brw) cache->bo = brw_bo_alloc(brw->bufmgr, "program cache", 4096, 64); if (can_do_exec_capture(brw->screen)) cache->bo->kflags = EXEC_OBJECT_CAPTURE; - if (brw->has_llc) - cache->map = brw_bo_map(brw, cache->bo, MAP_READ | MAP_WRITE | MAP_ASYNC); + if (brw->has_llc) { + cache->map = brw_bo_map(brw, cache->bo, MAP_READ | MAP_WRITE | + MAP_ASYNC | MAP_PERSISTENT); + } } static void -- 2.30.2