diff --git a/src/intel/vulkan/anv_private.h b/src/intel/vulkan/anv_private.h index 3130a8ef4da..fd24511dca6 100644 --- a/src/intel/vulkan/anv_private.h +++ b/src/intel/vulkan/anv_private.h @@ -1089,7 +1089,6 @@ struct anv_physical_device { * end. */ uint32_t n_perf_query_commands; - bool has_exec_capture; VkQueueGlobalPriorityKHR max_context_priority; uint64_t gtt_size; diff --git a/src/intel/vulkan/i915/anv_device.c b/src/intel/vulkan/i915/anv_device.c index 0488eea60b5..b83c9a1f0d7 100644 --- a/src/intel/vulkan/i915/anv_device.c +++ b/src/intel/vulkan/i915/anv_device.c @@ -109,8 +109,11 @@ anv_i915_physical_device_get_parameters(struct anv_physical_device *device) return result; } - if (intel_gem_get_param(fd, I915_PARAM_HAS_EXEC_CAPTURE, &val)) - device->has_exec_capture = val; + if (!intel_gem_get_param(fd, I915_PARAM_HAS_EXEC_CAPTURE, &val) || !val) { + result = vk_errorf(device, VK_ERROR_INITIALIZATION_FAILED, + "kernel missing exec capture support"); + return result; + } /* Start with medium; sorted low to high */ const VkQueueGlobalPriorityKHR priorities[] = { diff --git a/src/intel/vulkan/i915/anv_kmd_backend.c b/src/intel/vulkan/i915/anv_kmd_backend.c index e9f54cc8b7c..950082ebe9e 100644 --- a/src/intel/vulkan/i915/anv_kmd_backend.c +++ b/src/intel/vulkan/i915/anv_kmd_backend.c @@ -285,16 +285,13 @@ static uint32_t i915_bo_alloc_flags_to_bo_flags(struct anv_device *device, enum anv_bo_alloc_flags alloc_flags) { - struct anv_physical_device *pdevice = device->physical; - uint64_t bo_flags = EXEC_OBJECT_PINNED; if (!(alloc_flags & ANV_BO_ALLOC_32BIT_ADDRESS)) bo_flags |= EXEC_OBJECT_SUPPORTS_48B_ADDRESS; - if (((alloc_flags & ANV_BO_ALLOC_CAPTURE) || - INTEL_DEBUG(DEBUG_CAPTURE_ALL)) && - pdevice->has_exec_capture) + if ((alloc_flags & ANV_BO_ALLOC_CAPTURE) || + INTEL_DEBUG(DEBUG_CAPTURE_ALL)) bo_flags |= EXEC_OBJECT_CAPTURE; if (alloc_flags & ANV_BO_ALLOC_IMPLICIT_WRITE) {