From 00245332535b04ccaa2258eed02dee4dfc371316 Mon Sep 17 00:00:00 2001 From: Jason Macnak Date: Mon, 4 Oct 2021 14:17:52 -0700 Subject: [PATCH] rutabaga_gfx: rutabaga_gralloc: Request instance extensions VK_KHR_external_memory requires VK_KHR_external_memory_capabilities which requires VK_KHR_get_physical_device_properties2. Ash has started to check that the instance extensions were required when creating devices. BUG=b:189133053 TEST=launch Cuttlefish w/ Vulkano feature enabled in Crosvm Change-Id: Ifaafda72500ccbd16dd461bcd5dc2633de4b8cfc Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/crosvm/+/3203233 Commit-Queue: Gurchetan Singh Tested-by: kokoro Reviewed-by: Gurchetan Singh Reviewed-by: Dennis Kempin --- rutabaga_gfx/src/rutabaga_gralloc/vulkano_gralloc.rs | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/rutabaga_gfx/src/rutabaga_gralloc/vulkano_gralloc.rs b/rutabaga_gfx/src/rutabaga_gralloc/vulkano_gralloc.rs index fa3ccd74dd..1d8c34f7b4 100644 --- a/rutabaga_gfx/src/rutabaga_gralloc/vulkano_gralloc.rs +++ b/rutabaga_gfx/src/rutabaga_gralloc/vulkano_gralloc.rs @@ -70,7 +70,12 @@ impl VulkanoGralloc { pub fn init() -> RutabagaResult> { // Initialization copied from triangle.rs in Vulkano. Look there for a more detailed // explanation of VK initialization. - let instance = Instance::new(None, Version::V1_1, &InstanceExtensions::none(), None)?; + let instance_extensions = InstanceExtensions { + khr_external_memory_capabilities: true, + khr_get_physical_device_properties2: true, + ..InstanceExtensions::none() + }; + let instance = Instance::new(None, Version::V1_1, &instance_extensions, None)?; let mut devices: Map> = Default::default(); let mut has_integrated_gpu = false;