From bde12f75e1de264319a8102710cc8fe306d44ef8 Mon Sep 17 00:00:00 2001 From: Kenneth Graunke Date: Tue, 10 Apr 2018 16:01:50 -0700 Subject: [PATCH] i965: Don't stomp initial kflags for program cache. We want to flag EXEC_OBJECT_CAPTURE, but we ought to preserve any existing kflags. Today, there are none (as the program cache doesn't support 48-bit addressing), but once we start using softpin, we'll need to preserve EXEC_OBJECT_PINNED. Reviewed-by: Lionel Landwerlin --- src/mesa/drivers/dri/i965/brw_program_cache.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/mesa/drivers/dri/i965/brw_program_cache.c b/src/mesa/drivers/dri/i965/brw_program_cache.c index ce11f1d0703..78159288af0 100644 --- a/src/mesa/drivers/dri/i965/brw_program_cache.c +++ b/src/mesa/drivers/dri/i965/brw_program_cache.c @@ -223,7 +223,7 @@ brw_cache_new_bo(struct brw_cache *cache, uint32_t new_size) new_bo = brw_bo_alloc(brw->bufmgr, "program cache", new_size); if (can_do_exec_capture(brw->screen)) - new_bo->kflags = EXEC_OBJECT_CAPTURE; + new_bo->kflags |= EXEC_OBJECT_CAPTURE; void *map = brw_bo_map(brw, new_bo, MAP_READ | MAP_WRITE | MAP_ASYNC | MAP_PERSISTENT); @@ -390,7 +390,7 @@ brw_init_caches(struct brw_context *brw) cache->bo = brw_bo_alloc(brw->bufmgr, "program cache", 16384); if (can_do_exec_capture(brw->screen)) - cache->bo->kflags = EXEC_OBJECT_CAPTURE; + cache->bo->kflags |= EXEC_OBJECT_CAPTURE; cache->map = brw_bo_map(brw, cache->bo, MAP_READ | MAP_WRITE | MAP_ASYNC | MAP_PERSISTENT); -- 2.30.2